Medición de la aleatoriedad de las fórmulas CNF


12

Es ampliamente conocido que las fórmulas CNF se pueden dividir aproximadamente en 2 clases amplias: aleatoria versus estructurada. Las fórmulas estructuradas de CNF, en oposición a las fórmulas aleatorias de CNF, exhiben algún tipo de orden, mostrando patrones que es poco probable que ocurran por casualidad. Sin embargo, uno puede encontrar fórmulas estructuradas que muestran cierto grado de aleatoriedad (es decir, ciertos grupos específicos de cláusulas parecen mucho menos estructuradas que otras), así como fórmulas aleatorias con alguna forma débil de estructura (es decir, ciertos grupos específicos de cláusulas parecen menos aleatorias que otras ) Por lo tanto, parece que la aleatoriedad de una fórmula no es solo un hecho sí / no.

Sea una función que, dada una fórmula CNF F F , devuelve un valor real entre 0 y 1 inclusive: 0 significa una fórmula estructurada pura, mientras que 1 significa una fórmula aleatoria pura.r:F[0,1]FF0101

Me pregunto si alguien ha tratado de inventar tal . Por supuesto, el valor devuelto por r sería (al menos esta es mi intención) solo una medición práctica de acuerdo con algunos criterios razonables, en lugar de una verdad teórica sólida.rr

También me interesa saber si alguien ha definido y estudiado algún indicador estadístico que pueda usarse en la definición de , o en la determinación de otras propiedades generales útiles de una fórmula. Por indicador estadístico quiero decir algo así:r

  1. HCV (Hit Count varianza)

    Deje sea una función que, dada una variable v jN , devuelve el número de veces v j aparece en F . Deje V el conjunto de variables utilizadas en F . Deje ˉ h F = 1hF:NNvjNvjFVFserá el AHC (Recuento medio de aciertos). El VHC se define de la siguiente manera: HVC=1h¯F=1|V|vjVhF(vj)

    En casos aleatorios, el VHC es muy bajo (todas las variables se mencionan casi el mismo número de veces), mientras que en casos estructurados no lo es (algunas variables se usan con mucha frecuencia y otros no, es decir, hay "grupos de uso").HVC=1|V|vjV(hF(vj)h¯F)2





  2. hF+(vj)vjhF(vj)i:N[0,1]vjVi(vj)i(vj)=2min(hF+(vj),hF(vj))hF(vj)

    AID=1|V|vjVi(vj)

    0.511



  3. 0.5

    IDV=1|V|vjV(i(vj)AID)2

    00

Motivaciones

  1. Para comprender mejor cómo funcionan las fórmulas CNF, cómo se podría medir su aleatoriedad / estructura, si se pudieran inferir otras propiedades generales útiles al observar sus indicadores estadísticos, si estos indicadores se podrían usar para acelerar la búsqueda y de qué manera.
  2. Me pregunto si la satisfacción (o incluso el número de soluciones) de una fórmula CNF podría inferirse simplemente manipulando inteligentemente sus indicadores estadísticos.

Preguntas

  1. ¿Alguien alguna vez propuso una forma de medir la aleatoriedad de una fórmula CNF?
  2. ¿Alguien propuso alguna vez algún indicador estadístico que pueda usarse para estudiar o incluso inferir mecánicamente propiedades generales útiles de una fórmula de CNF?

1
vea el documento en esta respuesta ( cstheory.stackexchange.com/questions/4321/… ). Podría darle un consejo sobre cómo definir tal r
Marcos Villagra

1
discusión posiblemente relevante sobre la medición de la aleatoriedad de cadenas de bits mathoverflow.net/questions/37518/…
Yaroslav Bulatov

Te puedo decir esto ya que he estado trabajando en esto solo por un tiempo. Si considera SAT, las fórmulas para 1 y 2 son exponenciales. Por otro lado para k-SAT, las fórmulas para 1 y 2 son polinomiales. Esto se relaciona con mi PRECISIÓN PRECISA DE LA PREGUNTA K-SAT ALEATORIA, que nadie parece querer responder.
Tayfun paga

@Geekster: ¿Desea dar una respuesta aquí?
Hsien-Chih Chang 張顯 之

@Geekster: ¿Qué quieres decir con "... las fórmulas para 1 y 2 son exponenciales" ?
Giorgio Camerani

Respuestas:


3

Sugiero tomar prestada la intuición de la física de que las estructuras "menos aleatorias" son más simétricas. La simetría para CNF es cualquier transformación de las variables, que mantiene invariable la función. Según ese criterio, las funciones de 3 variables como

x1x2x3.

o, digamos,

(x1x2¬x3)(x1¬x2x3)(¬x1x2x3)(¬x1¬x2¬x3).

son menos aleatorios que, digamos

(x1x2¬x3)(x1¬x2x3)(¬x1¬x2x3).

En general, definir un concepto de "aleatorio" en estructuras finitas es un desafío. Históricamente, se probó en secuencias binarias, que posiblemente sean las estructuras finitas más simples. Por ejemplo, intuitivamente, una secuencia 01010101 es "menos aleatoria" que, por ejemplo, 01001110. ¡Sin embargo, se dio cuenta rápidamente de que no existe una definición formal consistente de secuencia aleatoria finita ! Por lo tanto, uno debe ser escéptico ante cualquier intento ingenuo de definir una medida de aleatoriedad para cualquier estructura finita.


Estoy totalmente de acuerdo con la intuición "estructura significa presencia de simetrías, mientras que aleatoriedad significa ausencia de simetrías" . Se refiere a las simetrías sintácticas (mientras que las simetrías semánticas son aquellas que cambian la función pero dejan el espacio de la solución sin alterar). Siempre he estado convencido de que las simetrías son la clave.
Giorgio Camerani

1
@Walter: La idea de simetrías es un intento de aprovechar el álgebra en lugar de los algoritmos: la complejidad algorítmica es una medida que desafía la definición consistente de objetos finitos. Pero luego tenemos que asignar una medida de complejidad a cada elemento de un grupo (por ejemplo, la transformación que niega una sola variable es más simple que la que niega dos) - esto se siente como simplemente empujar el problema ...
Tegiri Nenashi
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.