El circuito booleano más pequeño para generar un lenguaje

10

Considere un lenguaje no vacío de cadenas binarias de longitud n . Puedo describir L con un circuito booleano C con n entradas y una salida de modo que C ( w ) sea ​​verdadero si f w L : esto es bien conocido.LnLCnC(w)wL

Sin embargo, quiero representar con un circuito booleano C ' con n salidas y un cierto número de entradas, digamos m , de manera que el conjunto de los valores de salida de C ' para cada uno de los 2 m posibles entradas es exactamente L .LCn mC2mL

Dado , ¿cómo puedo encontrar dicho circuito C ' de tamaño mínimo y cuál es la complejidad? ¿Existe alguna relación entre los límites conocidos sobre el tamaño de los circuitos del primer tipo ( C ) y los circuitos de este segundo tipo ( C ' ), o la complejidad de encontrarlos?LCCC

(Observe que hay algún tipo de dualidad en el siguiente sentido: dado , puedo decidir fácilmente si una palabra de entrada w está en L evaluando el circuito, pero es NP-difícil en general encontrar alguna palabra en L encontrando una asignación tal que la salida sea verdadera. Dado C ' es igualmente NP-difícil decidir si alguna palabra de entrada w está en L porque tengo que ver si una asignación produce w como salida, pero es fácil encontrar alguna palabra en L evaluando el circuito en cualquier entrada arbitraria.)CwLLCwLwL

a3nm
fuente
2
Este documento no responde a su pregunta, pero estudia el tipo de circuitos que está buscando eccc.hpi-web.de/report/2012/079
Marcos Villagra
de sus comentarios a continuación, parece que más desea considerar una familia de circuitos donde no es finito. Supongo que su función también debe ser sobreyectiva y no puede ser biyectiva en general ...L
vzn
1
¿Cómo se administra ? Por el circuito C ? LC
usul

Respuestas:

11

Señalaré una conexión simple a circuitos no deterministas y comentaré brevemente sobre la dureza criptográfica.

Para , defina la complejidad de la imagen, denotada i m c ( S ) , como el número mínimo de puertas en cualquier circuito booleano C ( { 0 , 1) } m{ 0 , 1 } n cuya imagen es S . La pregunta se refiere a la complejidad de la computación i m c ( S ) , dada una representación de tabla de verdad de SS{0,1}nimc(S)C:{0,1}m{0,1}nSimc(S)S(una cadena de longitud ).2n

También defina la complejidad del circuito no determinista de , que denotaremos n c c ( S ) , como el circuito no determinista más pequeño C ( x , y ) : { 0 , 1 } n + m { 0 , 1 } aceptando exactamente S . Es decir, requerimos de C que x S iff y : C ( xSncc(S)C(x,y):{0,1}n+m{0,1}SCxS . Esta es una noción estándar, utilizada para definir la clase no uniforme N P / p o l y : es la clase de todos los conjuntos S = { S n } n > 0 , con S n{ 0 , 1 } n , tal que n c c ( S n ) p o l y ( n ) .y:C(x,y)=1NP/polyS={Sn}n>0Sn{0,1}nncc(Sn)poly(n)

Lo que quería señalar es que . Ambas direcciones de esta desigualdad son simples de verificar. imc(S)=ncc(S)±O(n)

Supongamos que denota la complejidad del circuito determinista. Usando Razborov-Rudich, el artículo que menciona Dai Le muestra (más o menos aquí) que, bajo ciertos supuestos criptográficos, es computacionalmente difícil distinguir las tablas de verdad de S con d c c ( S ) pequeñas, de las tablas de verdad de verdad al azar S (con d c c ( S ) casi máximo). Random S también tiene n c c ( S ) casi al máximo, y por supuesto tenemosdcc(S)Sdcc(S)Sdcc(S)Sncc(S) . Entonces su problema es difícil bajo los mismos supuestos.ncc(f)dcc(f)

¿Qué es más difícil de calcular dada una tabla de verdad para , d c c ( S ) o n c c ( S ) ? ¿Hay alguna reducción de cualquier manera? No lo sé.Sdcc(S)ncc(S)

Andy Drucker
fuente
5

Deberías echar un vistazo a este artículo de Kabanets y Cai. Citaré el resumen del artículo:

fsfsPP/polyNPE

CF:{0,1}mLC1,C2,,CnCiithFCi{0,1}m{0,1}Ci

Dai Le
fuente
fCfLf
Acabo de actualizar mi respuesta para abordar su comentario.
Dai Le
1
CiCiL{000,001,010,011}C2C3
a3nm
1
He añadido más explicaciones.
Dai Le
1
CFFLCfC