Comprobar una solución puede ser mucho más sencillo que encontrarla. Una prueba interactiva añade otra posibilidad: hacer preguntas aleatorias a quien afirma conocer la respuesta. Veremos qué garantiza ese diálogo, frente a cualquier intento de engaño, y por qué importa ocultar la pregunta correcta.
Si necesitas repasar:
1. El tamaño de entrada cuenta símbolos, no el valor que representan
Si una entrada binaria tiene longitud n, un algoritmo polinómico usa a lo sumo Cnᵏ pasos para constantes C,k independientes de la instancia. Enumerar hasta el valor del entero puede ser exponencial en su longitud.
La codificación de grafos también cuenta: una matriz de adyacencia tiene orden N² entradas para N vértices; una lista de aristas usa otra longitud. El coste de operar con enteros debe considerar sus bits si el modelo no los trata como palabras de tamaño fijo.
Un entero corto puede pedir una enumeración enorme
N=2²⁰.
Valor
Es 1.048.576.
Escritura binaria
Un uno seguido de veinte ceros: 21 bits.
Bucle
Hacer N iteraciones no es lineal en esos 21 bits; para N=2ᵐ escala exponencialmente con m.
Se mide respecto de la longitud, no del valor numérico sin aclararlo.
Un ejemplo finito no decide complejidad; la familia N=2ᵐ muestra la escala.
Cuadrático puede seguir siendo polinómico
Grafo de N vértices como matriz binaria N×N.
Entrada
Hay N² posiciones.
Recorrer
Leer la matriz cuesta orden N² operaciones de acceso.
Respecto al tamaño
Es lineal en el número de entradas de esa representación.
La representación da sentido a la cuenta de recursos.
No se cambia silenciosamente de N vértices a n bits en una cota.
2. Decisión, búsqueda y verificación son tareas diferentes
Una pregunta de decisión tiene respuesta sí o no: «¿existe una clique de tamaño k?». Búsqueda pide producirla. Verificación recibe una candidata y comprueba que cumple las condiciones. Una clique es un grupo de vértices distintos todos conectados entre sí.
P contiene decisiones resueltas por algoritmos deterministas polinómicos. NP permite certificar respuestas afirmativas con certificados de longitud polinómica y un verificador determinista polinómico.
NP no significa «no polinómico».
Qué demuestra una lista candidata
Nos entregan vértices 1,3,4 y pedimos clique de tamaño tres.
Decisión
La pregunta era si existe alguna.
Verificación
Revisar esta lista puede confirmar una respuesta afirmativa.
Búsqueda
No se ha explicado cómo encontrar esa lista a partir del grafo.
Un certificado sirve para comprobar una afirmación positiva.
No encontrar rápidamente uno no demuestra que no exista.
Una negación cambia los cuantificadores
«No hay clique de tamaño tres».
Afirmativa original
Existe una terna cuyas tres aristas están presentes.
Negación
Para toda terna, al menos una arista falta.
Consecuencia
La lista de una terna concreta no certifica por sí sola esa afirmación universal.
El tipo de certificado depende de lo que se afirma.
No se concluye que toda negación sea imposible de verificar eficientemente.
3. El certificado debe cumplir pertenencia, distinción y aristas
Para k vértices se comprueba que cada etiqueta pertenezca al grafo, que no haya repeticiones y que cada par tenga arista. Hay k(k−1)/2 pares. Con matriz de adyacencia, cada consulta es directa; con otras representaciones se incluye su coste.
La lista usa orden k log N bits, con una convención estándar para etiquetas de N vértices. Primero se descartan k>N y formatos inválidos; no se concede una clique mayor repitiendo etiquetas.
Verificar una clique pequeña
En cuatro vértices, aristas {12,13,23,34}; candidata {1,2,3}.
Etiquetas
Son tres vértices distintos del grafo.
Pares
Se consultan 12,13 y 23: los tres están.
Aceptar
La candidata sí demuestra una clique de tamaño tres.
Se han comprobado todas las condiciones de esa candidata.
La arista 34 no afecta a esta terna.
Dos certificados que deben rechazarse
En ese grafo, candidatas {1,3,4} y {1,2,2}.
Primera
Le falta la arista 14.
Segunda
Repite el vértice 2; no tiene tres vértices distintos.
Resultado
Ninguna certifica una clique de tamaño tres.
Comprobar solo algunas aristas puede dar una aceptación incorrecta.
Para k=6 se requieren quince pares, además de validar las etiquetas.
4. Completitud y solidez tienen cuantificadores diferentes
Un probador envía mensajes a un verificador aleatorio de tiempo polinómico. En el marco clásico IP el probador puede tener cómputo ilimitado; el verificador, rondas y comunicación están acotados polinómicamente. El verificador puede usar bits privados.
Completitud: en entradas verdaderas existe un probador honesto que consigue alta aceptación. Solidez: en entradas falsas, cualquier probador, incluso adaptativo, tiene aceptación acotada. No basta que el diálogo funcione con un colaborador que siempre diga la verdad.
Distinguir quién está limitado
El verificador pregunta de qué grafo procede un mensaje oculto.
Probador
Puede investigar exhaustivamente todos los isomorfismos si hace falta.
Verificador
Solo genera el reto y comprueba la respuesta contra su bit privado.
Recursos
La eficiencia del probador no viene garantizada por este marco.
Comprobar con ayuda no es dar un algoritmo rápido autónomo para toda tarea.
Si se exigiera también probador eficiente habría que decirlo.
Por qué una prueba con un amigo no certifica solidez
Un protocolo acepta siempre lo que el probador responda.
Verdad
Un amigo honesto obtiene aceptación segura.
Falsedad
Un probador mentiroso también obtiene aceptación segura.
Diagnóstico
Hay completitud, pero falla la solidez.
La garantía debe resistir a cualquier estrategia para entradas falsas.
Una alta tasa de aceptación por sí sola no define una prueba fiable.
5. Un reto privado ilustra una prueba de no isomorfismo
Dos grafos son isomorfos si se convierten uno en otro renombrando vértices y conservando aristas. Para probar que G₀ y G₁ no son isomorfos, el verificador elige un bit b uniforme y una permutación π uniforme, y envía solo H=π(). Guarda b y π en privado.
El probador contesta un bit b′.
Si los grafos no son isomorfos, sus conjuntos de copias etiquetadas son disjuntos y un probador sin límite puede identificar de cuál procede H: completitud perfecta.
Dos grafos no isomorfos con el mismo número de aristas
G₀ es el camino 1–2–3–4; G₁ tiene aristas 12,13,14.
Grados
El camino tiene grados 2,2,1,1; la estrella 3,1,1,1.
Renombrar
La secuencia de grados no cambia al renombrar.
Responder
Un probador distingue siempre sus copias por los grados.
Aquí el reto se resuelve con una propiedad muy sencilla.
El ejemplo pequeño no pretende ser difícil para el propio verificador.
Qué se envía y qué se oculta
Elegimos en privado b=1 y renombramos la estrella.
Mensaje
Solo el grafo renombrado H.
Respuesta
El probador devuelve b′, sin recibir b.
Comprobación
El verificador compara b′ con el bit que guardó.
La distribución del mensaje es lo que analizaremos.
Enviar también b haría que cualquiera acertase, incluso con una afirmación falsa.
6. Si los grafos son isomorfos, el mensaje no contiene el bit secreto
Para grafos isomorfos existe un renombrado fijo entre G₀ y G₁. Componer una permutación uniforme con ese renombrado conserva uniformidad. Por eso H tiene exactamente la misma distribución para b=0 y b=1.
Con el bit uniforme, observar H deja ambas posibilidades equiprobables. Ningún probador puede adivinarlo con probabilidad superior a 1/2. El razonamiento no presupone una heurística del adversario ni que le resulte costoso calcular: es una igualdad de distribuciones.
Contar copias de un camino de cuatro vértices
G₀ y G₁ son dos etiquetados del mismo camino.
Permutaciones
Hay 4!=24; invertir el camino conserva el grafo.Copias
Hay doce grafos etiquetados distintos, cada uno producido por dos permutaciones.
Comparar bits
Cada copia tiene probabilidad 2/24=1/12 desde cualquiera de los dos originales.
El mensaje H no permite distinguir cuál se eligió.
Las copias no se cuentan como veinticuatro mensajes distintos si coinciden sus aristas.
La mejor regla tampoco supera una mitad
Para cada mensaje H, un probador responde un bit, quizá al azar.
Condicionar
P(b=0|H)=P(b=1|H)=1/2.Responder
Si responde cero con probabilidad p, acierta (1/2)p+(1/2)(1−p)=1/2.Promediar
La probabilidad total sigue siendo 1/2.
La cota incluye cualquier cálculo o aleatoriedad del probador.
Se usa que el reto no revela el bit ni la permutación privada.
7. La repetición necesita retos nuevos y una cota tras cada historial
Repetimos k veces con bits y permutaciones nuevos independientes y aceptamos solo si todas las rondas pasan. En una entrada falsa, incluso dado el historial y las respuestas anteriores, el siguiente bit sigue oculto por el mismo argumento.
Si cada aceptación falsa condicional es como máximo 1/2, la probabilidad de pasar todas es como máximo 2⁻ᵏ, por multiplicación de probabilidades condicionales. La respuesta del probador sí puede adaptarse al pasado; lo necesario es mantener la cota condicional.
Elegir el número de rondas
Queremos aceptación falsa como máximo 1/1000.
Nueve
2⁻⁹=1/512, todavía demasiado grande.Diez
2⁻¹⁰=1/1024≤1/1000.Verdad
El probador correcto sigue pasando todas las rondas del ejemplo no isomorfo.
Diez rondas frescas bastan para esa cota.
No se informa error cero ni certeza absoluta.
Repetir el mismo reto no multiplica garantías
Se usa diez veces el mismo bit oculto y el mismo H; el probador responde siempre cero.
Una ronda
Acierta con probabilidad 1/2.
Diez juntas
Todas aciertan si el único bit elegido fue cero: probabilidad 1/2.
Condicionar
Dado que pasó la primera, todas las siguientes pasan con probabilidad uno.
Las cotas marginales 1/2 no autorizan concluir 1/1024.
La frescura del reto sostiene el argumento, no solo contar mensajes repetidos.
8. El ejemplo no demuestra por sí solo toda la teoría de IP
El teorema clásico IP=PSPACE identifica estas pruebas interactivas de recursos polinómicos con decisiones realizables en espacio polinómico. Su demostración usa construcciones mucho más generales que el reto de grafos. No se deduce del pequeño ejemplo.
Solidez probabilística, argumentos basados en límites de cómputo y conocimiento cero son propiedades distintas. Tampoco una cota de aceptar una falsedad se convierte automáticamente en la probabilidad posterior de que una afirmación aceptada sea verdadera.
Distinguir espacio de tiempo
Un procedimiento usa n² celdas, pero puede volver a utilizarlas durante muchos pasos.
Memoria
La cota de espacio puede ser polinómica.
Tiempo
No se concluye que el número total de pasos sea polinómico.
Teorema
IP=PSPACE no dice que P=PSPACE ni que el probador sea eficiente.
La igualdad de clases tiene recursos y modelos concretos.
La teoría del ejemplo no elimina esas distinciones.
Una aceptación no trae una probabilidad posterior universal
En una población hipotética hay una afirmación verdadera y 999 falsas; completitud uno y aceptación falsa exactamente 1/1024.
Pesos de aceptación
Verdadera aporta 1; falsas aportan 999/1024 en unidades relativas iguales.
Condicionar
Entre aceptaciones, probabilidad de verdad=1/(1+999/1024)=1024/2023≈0,5062.Alcance
El ejemplo usa esa población y esa tasa exacta; sin ellas solo teníamos una cota condicional.
Solidez y probabilidad de verdad tras aceptar son preguntas diferentes.
El cálculo no afirma que esa sea la distribución de problemas de un protocolo real.
Ahora lo resolvemos de principio a fin.
EJEMPLO RESUELTO 1
Tamaño de un certificado
En un grafo de n vértices, un certificado lista k vértices de una clique. ¿Cómo se verifica?
Certificado
Lista de k etiquetas de vértices.
Validar
Cada una debe pertenecer al grafo y las k deben ser distintas.
Pares
Revisar las k(k−1)/2 parejas.
Aristas
Cada pareja debe estar conectada; si falta una, se rechaza.
Coste
Con representación estándar, longitud de lista y estas consultas son polinómicas en la entrada válida.
Comprobar
Aceptar la lista no explica cómo encontrarla eficientemente.
La verificación es polinómica para una representación estándar del grafo.
Encontrar la clique no está resuelto por el hecho de poder comprobar una lista.
EJEMPLO RESUELTO 2
Reducir el error del protocolo
La probabilidad de engaño por ronda queda acotada por 1/2 y usamos diez rondas frescas aceptando solo si todas pasan. Calcula la cota.
Hipótesis
En cada ronda fresca, aceptación falsa condicional como máximo 1/2.
Regla
Se acepta solo si pasan todas.
Multiplicar
Diez factores de 1/2 dan (1/2)¹⁰.
Potencia
2¹⁰=1024.Cota
Probabilidad de aceptación falsa≤1/1024.Comprobar
El margen es positivo; repetir el mismo reto no justificaría esta cuenta.
Probabilidad de aceptación falsa ≤1/1024.
La cota no es cero y no debe describirse como certeza absoluta.
Los símbolos que hemos usado
- Longitud de entrada
- Número de símbolos de una codificación fijada.
- P
- Problemas de decisión resolubles en tiempo determinista polinómico.
- NP
- Problemas con certificados afirmativos de longitud polinómica verificables en tiempo polinómico.
- Probador / verificador
- Parte que intenta convencer / algoritmo eficiente que decide aceptar o rechazar.
- Completitud
- Una afirmación verdadera puede hacer aceptar al verificador con alta probabilidad mediante un probador apropiado.
- Solidez
- Una afirmación falsa tiene aceptación acotada frente a cualquier estrategia del probador.
- IP
- Clase definida por pruebas interactivas con verificador probabilístico y recursos polinómicos.
Ahora te toca a ti.
Tienes cinco ejercicios. Inténtalos; las pistas te ayudan si te atascas.
Practicar este tema →