Dejar y ser -vectores de variables booleanas. Tengo un predicado booleano en . Le doy a mi amiga Priscilla. En respuesta, ella me da, un predicado booleano en , y ella afirma que
o en otras palabras, que
Me gustaría verificar su reclamo de alguna manera. ¿Cómo puede Priscilla ayudarme a verificar este reclamo?
Puede suponer que tanto como Q están representados como fórmulas CNF y que no son demasiado grandes (tamaño polinómico o algo así).
En un mundo ideal, sería increíble si pudiera reducir el problema de verificar este reclamo a SAT: tengo un solucionador SAT, y sería genial si puedo usar el solucionador SAT para verificar este reclamo. Sin embargo, estoy bastante seguro de que no será posible formular el problema de verificar este reclamo directamente como una instancia SAT; probar la validez de una fórmula 2QBF es casi seguro que es más difícil que el SAT. (La dirección es fácil de formular como una instancia SAT, pero la dirección es difícil porque implica inherentemente dos cuantificadores alternativos).
Pero supongamos que Priscilla podría darme alguna evidencia adicional para respaldar su reclamo. ¿Hay alguna evidencia adicional o testigo que Priscilla me pueda dar, lo que me facilitaría verificar su reclamo? En particular, ¿hay alguna evidencia adicional o testigo que ella pueda darme, lo que me facilitaría formular el problema de verificar su reclamo como una instancia de SAT (a la que luego puedo aplicar mi solucionador de SAT)?
Un aspecto inusual de mi entorno es que estoy asumiendo (heurísticamente) que tengo un oráculo para el SAT. Si le gusta la teoría de la complejidad, puede pensarlo de esta manera: estoy asumiendo el papel de una máquina que puede calcular cosas en (es decir, en ), y estoy buscando verificar la de Priscilla reclamar usando un algoritmo en . Mi agradecimiento a mdx por esta forma de pensar sobre las cosas.
Mi motivación / aplicación: estoy buscando hacer una verificación formal de un sistema (por ejemplo, verificación de modelo simbólico), y un paso clave en el razonamiento implica la eliminación del cuantificador (es decir, a partir de , obtener ). Espero una forma limpia de verificar que la eliminación del cuantificador se realizó correctamente.
Si no hay una solución que funcione para todos los posibles , siéntase libre de sugerir una solución que sea "sólida pero no completa", es decir, una técnica que para muchos me permite verificar la equivalencia reclamada. (Incluso si no verifica el reclamo en algunos que satisfacen el reclamo, todavía puedo intentarlo como heurístico, siempre y cuando nunca afirme inapropiadamente haber verificado un reclamo falso. En cualquier dado , podría funcionar, o podría no funcionar; si no funciona, no estoy peor que donde empecé).
first-order-logic
etiqueta esté justificada. La pregunta es sobre fórmulas booleanas cuantificadas.