Preuves interactives: IP, AM, MA et isomorphisme de graphe

Slides:



Advertisements
Présentations similaires
Preuves interactives: IP, AM, MA et isomorphisme de graphe
Advertisements

IFT Chapitre 1 Classes de complexité fondamentales:
IFT Au delà de NP: hiérarchie polynomiale, EXP, NEXP.
IFT Théorème PCP: Aperçu et applications à linapproximabilité.
Algorithmes d ’approximation
Réalisé par : - Mohamed QUARCH Jury : - M.HASSNOUN - Mouad ARRAD - M.NADIR - El mehdi EL RHANDOURI - A.BAALAL Encadré par : - M.HASSNOUN année scolaire:2006/2007.
Le débogage Semaine 12 Version A15. Plan de leçon - Débogage  Commentaire javadoc  Définition  Fonctionnement  Point d’arrêt  Exécution  Contrôler.
CINI – Li115 1 Semaine 9 Algorithmes de tri ● Introduction ● Tri à bulle ● - principe ● - algorithme ● - efficacité ● Tri par sélection ● - principe, algorithme,
Courbes d'Interpolation Interpolation de Lagrange, et Interpolation B-spline.
Auteur : Patrice LEPISSIER Les probabilités  Notions de base Notions de base  Variable aléatoire Variable aléatoire  La loi Normale La loi Normale.
Les bonzes sont poursuivis par le Yéti. Ils doivent tous les trois gravir la montagne pour être en sécurité et ainsi gagner la partie. Le but du jeu est.
Calcul de probabilités
V Suite géométrique : 1°) Définition : un+1
Rédiger un protocole expérimental en physique-chimie en cycle 4
Analyse, Classification,Indexation des Données ACID
Valeurs de toutes les différences observables sous H0
DOC MYCK : Programmation
Deuxième partie : La courbe d’indifférence
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Les bandes de Bollinger
Information, Calcul, Communication
Semaine #1 INF130 par Frédérick Henri.
Algorithmique Avancée et Complexité Chap2:Complexité et Optimalité
Représentation de l’information en binaire:
Loi Normale (Laplace-Gauss)
Javadoc et débogueur Semaine 03 Version A17.
Fonctions affines.
Information, Calcul, Communication
Précision d'une mesure et chiffres significatifs
Un Algorithme , c'est Quoi ?
Plans d’experiences : plans de melanges
Complexité des Problèmes Combinatoires
Introduction aux Statistiques Variables aléatoires
Scénario Quatre hipsters entrent en collision un dans l'autre dans un ascenseur plein de personnes. En conséquence ils laissent tomber leurs téléphones.
Concepts avancés en mathématiques et informatique appliquées
2.2 Probabilité conditionnelle
3.3 loi discrète 1 cours 14.
Les tableaux.
4.2 Estimation d’une moyenne
La méthode du simplexe. 1) Algorithme du simplexe  Cet algorithme permet de déterminer la solution optimale, si elle existe, d’un problème de programmation.
Introduction aux statistiques Intervalles de confiance
Structure D’une Base De Données Relationnelle
Calcul Relationnel Chapitre 4, Section 4.3.
Formules de calculs et Fonctions. Structure des formules de calcul Commencez toujours votre calcul par le signe =, ensuite sans laisser d’espaces, placez.
Module: Logique Mathématique. SOMMAIRE 1- Notions d’ensembles 2- Constructions d’ensembles 3- Cardinal d’ensembles 4- Relations d’ensembles ordonnées.
Calculs des incertitudes Lundi 30 Avril 2018 Master de Management de la Qualité, de la Sécurité et de l’Environnement.
 1____Probabilité  2______variables aléatoires discrètes et continues  3______loi de probabilités d’une v a  4_______les moyens et les moyens centraux.
Examen des vœux Réception et acceptation des propositions
SDRP & MA Problème du rendez vous : un algorithme probabiliste et une analyse probabiliste 09/11/2018.
Calcul de probabilités
Lois de Probabilité Discrètes
2.4 La loi de vitesse d’une réaction chimique
La puissance du transfert d’énergie électrique entre un générateur et un circuit constitué de conducteurs ohmiques dépend-elle de ces conducteurs ohmiques.
Chapitre IV Protection contre les erreurs
Position, dispersion, forme
THÉORÈME DU SALAIRE.
Information, Calcul, Communication
IFT313 Introduction aux langages formels
CSI 3505 Algorithmes Voraces
Recherche de zero d'une fonction MARMAD ANAS MPSI -2.
La démarche scientifique
Flowchart Itération Cours 04.
Programme d’appui à la gestion publique et aux statistiques
Les méthodes quantitatives en éducation
CSI 3505 / Automne 2005: Conception et Analyse des Algorithmes I.
A. Zemmari SDRP & MA Problème du rendez vous : un algorithme probabiliste et une analyse probabiliste A. Zemmari.
Analyse des traces suite à une séance de tri de Groupes Nominaux
Définition des actions mécaniques :
Boulain Joris, Handouz Yassine, Regnier Fabien, Giraud Antoine
STATISTIQUE INFERENTIELLE LES TESTS STATISTIQUES.
Transcription de la présentation:

Preuves interactives: IP, AM, MA et isomorphisme de graphe IFT-66975 Preuves interactives: IP, AM, MA et isomorphisme de graphe

Problème de l’isomorphisme de graphe (GI) Entrée: deux graphes non-dirigés G0 = (V0,E0) et G1 = (V1,E1). Question: G0 et G1 sont-ils isomorphes? On dit que G0  G1 s’il existe une permutation  des points de V0 telle que (u,v)  E0  ((u),(v))  E1.

GI  NP (il suffit de choisir non déterministement ) Que sait-on de GI? GI  NP (il suffit de choisir non déterministement ) GI est résoluble en temps polynomial pour un grand nombre de classes de graphes. GI est NL-difficile. Garey & Johnson (1979) considèrent GI comme un problème qui est peut être dans NP mais ni dans P ni NP-complet. C’est un des rares candidats encore en lice! Plusieurs questions sans réponse: GI  co-NP??? GI  BPP???

Rappel: NP et les preuves Un langage L est dans NP s’il existe un polynôme q et un langage V  P tel que L = {x |  y: |y|  q(|x|)  (x,y)  V}. L’appartenance de x à L peut être vérifiée en temps polynomial en |x| à condition qu’une preuve nous en soit fournie.

Assez semblable à notre intuition de ce que doit être la preuve d’un théorème. (pas nécessairement facile à trouver mais facile à comprendre) Deux façons naturelles d’aggrandir un peu la classe NP: Se contenter d’une démonstration qui nous inspire “suffisamment” confiance. Ajouter la possibilité d’une interaction avec le prouveur.

La classe MA On dit que L est un langage avec preuves publiables s’il existe un polynôme q et un algorithme probabiliste V tel que Si x  L alors il existe un y  {0,1}p(|x|) tel que Pr[V accepte (x,y)]  ¾. Si x  L alors pour toute y  {0,1}p(|x|) on a Pr[V accepte (x,y)]  ¼. Les langages avec preuves publiables forment la classe MA (Merlin-Arthur). On a NP  MA. Par contre il semble a priori improbable que co-NP  MA.

On veut maintenant augmenter la puissance de notre algorithme de vérification de l’appartenance de x à un langage L en lui offrant la possibilité d’un dialogue avec un prouveur tout-puissant. On veut intuitivement conserver les propriétés suivantes: Si x  L, alors un prouveur “honnête” peut convaincre le vérificateur que c’est le cas. Si x  L, alors même un prouveur “malhonnête” ne réussira à convaincre le vérificateur que x  L.

Preuves interactives Une preuve interactive est un protocole de communication entre un prouveur (dénoté P) qui est un algorithme et un vérificateur (V) qui est un algorithme probabiliste. Le protocole reçoit une entrée x. Après un certain nombre de rondes d’échanges entre P et V, le vérificateur décide d’accepter ou de rejeter x. Le nombre de rondes peut dépendre de |x| et de la communication qui a eu lieu. Le temps de calcul de V est borné par un polynôme de |x|.

Pour un prouveur P et un vérificateur V, soit DP,V(x) la variable aléatoire qui est 1 si l’interaction de P et V amène V à accepter x et qui est 0 sinon. Définition: Un langage L appartient à la classe IP, s’il existe un protocole de preuve interactive et un vérificateur V tel que: Si x  L alors il existe un prouveur P tel que Pr[DP,V(x) = 1]  ¾. Si x  L alors pour tout prouveur P on a Pr[DP,V(x) = 1]  ¼. De plus, L  IP(k) s’il existe un tel protocole qui n’utilise que k messages échangés entre P et V.

Remarques sur IP IP(1) = MA par définition. IP  PSPACE. En effet, tous les messages envoyés par le prouveur sont de longueur polynomiale (sinon V ne peut même pas les lire!) et donc on peut simuler tous les prouveurs potentiels en espace polynomial. IP = PSPACE (Shamir 92) IP(2) = IP(k) pour tout k  3.

La classe IP(2) est souvent appelée AM (Arthur-Merlin) La classe IP(2) est souvent appelée AM (Arthur-Merlin). Les protocoles correspondants ont la structure suivante: Le vérificateur reçoit l’entrée x et construit de façon probabiliste une “question” (x,r). Le prouveur retourne une réponse y de longueur polynomiale. Le vérificateur accepte ou rejette le triplet (x,r,y). On a MA  AM. Cependant, on ne croit pas que co-NP  AM. En particulier, on ne voit pas comment un tel protocole pourrait convaincre un vérificateur qu’une formule est insatisfiable.

Théorème: GIc  AM. C’est une forte indication que GI n’est pas NP-complet. En effet si GI est NP-complet alors pour tout K  NP on a K p GI et Kc p GIc. On peut alors conclure que co-NP  AM.

Démonstration: On utilise le protocole suivant. V reçoit G0 et G1. Il choisit aléatoirement un i  {0,1} et une permutation de Vi. Il envoie au prouveur le graphe H = (Gi). Le prouveur retourne un j  {0,1}. V accepte la paire G0,G1 (donc conclut que G0 et G1 ne sont pas isomorphes) si i = j.

Note: Wegener analyse précisément les détails cachés par “choisir aléatoirement une permutation de Vi”. Supposons que G0 et G1 ne sont pas isomorphes. On veut montrer qu’il existe un prouveur P qui convainc V avec une forte probabilité. Si G0, G1 sont non-isomorphes, alors H = (Gi) est isomorphe à Gi mais pas à Gī. Donc P peut déduire i à partir de H et retourner cette valeur. Dans ce cas, P renvoie toujours à V un j égal à i et la probabilité que V accepte est donc 1.

Supposons maintenant G0  G1. V envoie H = (Gi) à P. Les trois graphes H, G0, G1 à la disposition de P sont isomorphes. Donc, même un prouveur malicieux ne saura comment réagir car il n’a aucune information sur i! Plus précisément: soit Sn l’ensemble des permutations de n points avec n = V0 = V1. On veut montrer qu’il existe autant de   Sn telles que (G0) = H que de ’  Sn telles que (G1) = H.

Pour un graphe G, Aut(G) est l’ensemble des automorphismes de G, i. e Pour un graphe G, Aut(G) est l’ensemble des automorphismes de G, i.e. des permutations  telles que (G) = G. Aut(G) est un groupe sous la composition de fonctions car si ’, ’’  Aut(G) alors ’ ∘ ’’  Aut(G). Par ailleurs, la permutation identité * est toujours dans Aut(G) et ’ ∘ ’-1 = ’-1 ∘ ’ = *. Aut(G) est donc un sous groupe de Sn. Montrons que le nombre de permutations   Sn telles que (G) = H est exactement |Aut(H)|.

D’abord, si (G) = H et ’  Aut(H) alors on a (’ ∘ )(G) = G et donc il existe au moins |Aut(H)| permutations avec (G) = H. À l’inverse, soit (G) = H. Pour chaque ’(G) = H on a que ( ∘ ’-1)(H) = H. Donc ( ∘ ’-1)  Aut(H) et pour ’  ’’ on a ( ∘ ’-1)  ( ∘ ’’-1). Donc il y a au plus |Aut(H)| permutations avec (G) = H. En particulier, si G0 et G1 sont isomorphes alors pour tout graphe H, il existe autant de permutations qui donnent (G0) = H que de permutations donnant (G1) = H.

V a choisi i  {0,1} aléatoirement V a choisi i  {0,1} aléatoirement. Mais puisque H = (Gi) est un graphe aléatoire de l’ensemble des graphes isomorphes à G0 et G1 on a Pr[i = 0 | H] = Pr[i = 1 | H] = ½. Donc, peut importe le j que retourne P, on a que i = j et donc que V accepte G0 et G1 comme étant non-isomorphes avec probabilité ½. On requiert que la probabilité que V accepte incorrectement soit au plus ¼. Cela est fait simplement en exécutant deux fois (en parallèle) le protocole décrit ci-dessus et en acceptant seulement si i1 = j1 et i2 = j2.

Question légitime: pourquoi est-ce que l’on a décrit ce qui nous intéresse en 5 acétates alors que Wegener en fait 10 pages? Plusieurs résultats absolument pas triviaux se cachent sous l’affirmation IP(2) = AM! En particulier, on peut voir le théorème 11.3.4 de Wegener comme résolvant le problème de trouver un protocole en deux rondes pour GIc lorsque les bits aléatoires choisis par le vérificateur sont accessibles au prouveur. La preuve est très ingénieuse bien qu’un peu dure à suivre.

Théorème: Si GI est NP-complet alors 2 = 2. Pour la preuve voir Wegener. On a déjà conclu que si GI est NP-complet alors co-NP  AM. Le résultat ci-dessus est en fait plus faible, mais est formulé sans référence à AM qui est une classe de complexité moins connue.

Preuves avec zéro-connaissance Plaçons nous dans un contexte plus cryptographique. Est-il possible pour le prouveur de convaincre le vérificateur que deux graphes sont isomorphes sans pour autant permettre au vérificateur d’avoir de l’information intéressante pour construire un tel isomorphisme? Ce genre de questions conduit naturellement à la notion de preuve avec zéro-connaissance. La définition formelle est délicate mais l’exemple suivant capte raisonnablement bien l’intuition.

Un autre système de preuves pour GI Soit G0, G1 deux graphes isomorphes et supposons que le prouveur connait une permutation * telle que *(G0) = G1. P choisit aléatoirement i  {0,1} et   Sn puis envoie H = (Gi). V choisit j  {0,1} aléatoirement et l’envoie à P. P envoie à V une permutation ’. V accepte si ’(Gj) = H. Notez que si, par exemple, i = 0 et j = 1 alors P n’a qu’à envoyer la permutation ’ =  ∘ *-1. Dans tous les cas, P peut en temps polynomial calculer un ’ qui convaincra V. Mais il ne pourra le faire que si G0 et G1 sont bien isomorphes. Au moins intuitivement, il est clair que V n’obtient aucune information de qualité sur une permutation telle que (G0) = G1.