La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

QSL,27 Novembre 20011 Vérification probabiliste Université Paris II Michel de Rougemont 1.Algorithmes probabilistes qui.

Présentations similaires


Présentation au sujet: "QSL,27 Novembre 20011 Vérification probabiliste Université Paris II Michel de Rougemont 1.Algorithmes probabilistes qui."— Transcription de la présentation:

1 QSL,27 Novembre 20011 Vérification probabiliste Université Paris II Michel de Rougemont mdr@lri.fr http://www.lri.fr/~mdr 1.Algorithmes probabilistes qui vérifient une propriété. 2.Vérification formelle de programmes probabilistes. 3.Applications des deux approches.

2 QSL,27 Novembre 20012 Vérification Logique et Complexité Calcul : f(x) =y Verification : x,y donnés, decider si f(x)=y Pour une définition de f, quelle est la complexité de la vérification? Verification formelle Pour un programme (circuit, C,…) qui calcule une fonction g, comment savoir si

3 QSL,27 Novembre 20013 cf: George Boole The Laws of Thought, 1854 Part I: propositional logic, Part II: probability cf: John von Neumann The Report on EDVAC, 1945 Theory of Games and Economic Behavior, 1944 (cf: Alan Turing On Computable Numbers, 1936 Studies in Quantum Mechanics, 1932-35) Ref. C. Papadimitriou: Logique et Probabilité

4 QSL,27 Novembre 20014 Vérification probabiliste Fonctions classiques sur des matrices booléennes Calcul probabiliste t Il existe un algorithme proba. A 1.Si f(x)=1, Prob[ A accepte] > 2/3 2.Si f(x)=0, Prob[ A rejette ] > 2/3

5 QSL,27 Novembre 20015 Vérification polynomiale NP Il existe une fonction t.q. L est dans NP sil existe une fonction g dans P t.q. Pour la fonction : On ne connaît pas de telle fonction g!! La fonction est le complément de Cest une fonction de co-NP.

6 QSL,27 Novembre 20016 Vérification probabiliste P V 0 (1/2) 1 (1/2) L admet une preuve interactive, sil existe un protocole t.q pour tout x : 1.Si, Prob [ P.V(x)=1] =1 2.Si, Prob [ P.V(x)=1] < 1/2 Comment vérifier avec un protocole? 2.V choisit {1,2} et construit 2.P envoit. 3.Si, P.V=1, sinon P.V=0

7 QSL,27 Novembre 20017 Vérification polynomiale probabiliste : IP=PSPACE Soit Il existe un protocole IP qui vérifie si Perm(A)=b Soit kSAT la fonction qui décide de la satisfaisabilité de k- clauses: #kSAT est la fonction de comptage. SkSAT =Prob [ x satisfait] Perm, S2SAT, S3SAT sont #P- complètes.

8 QSL,27 Novembre 20018 Vérification probabiliste dune preuve : PCP

9 QSL,27 Novembre 20019 Checker,Testeur de Blum Checker pour f (Blum, Kannan, ~1990) P C x y Un checker est un programme probabiliste avec oracle P t. q pour tout x,k : Si P=f, C(x,k) = Correct Si P(x)!=f(x), Prob[ C(x,k) =Buggy] >1- ½^k Correct Buggy

10 QSL,27 Novembre 200110 Checker pour Graph-Iso P (G, H) = si G iso H, (1, ) sinon 0 P C G,H (1, ) ou 0 Correct Buggy C(G,H, k): Si P (G, H)=(1, ), verifier que G= (H) Si P (G, H)=0, choisir Si =1, G= (G). Si P(G,G)=0, Buggy Si =2, H= (H), Si P(G,H)=1, Buggy Après k essais, Correct

11 QSL,27 Novembre 200111 Distance d(f,g) = | {x : f(x) != g(x)}| / | D| Un auto-testeur pour f est un programme T(P, ) t.q. –Si d(P,f)=0, alors T(P, )=Correct –Si d(P,f) > alors T(P, )=Buggy Correcteur. Division (x,y) : Majorité { x.r/y.r : r aléa.} Auto testeur

12 QSL,27 Novembre 200112 Classe de fonctions ou de propriétés Goldreich, Golwasser, Ron ~1995 Un test pour F est un algorithme probabiliste A t.q. –Si f est dans F, A accepte –Si f est loin de F, A rejette –T(A) indépendante de n Exemple: k-colorabilité de graphes Test de propriété G Gi sous graphe aléatoire

13 QSL,27 Novembre 200113 Quelles propriétés de graphes (matrices) admettent des testeurs? –Alon et al., STOC 99: Sigma 2 testeurs Compression. Tests et complexité descriptive Epsilon-equivalent

14 QSL,27 Novembre 200114 Vérification formelle Preuves: –Programme correct vs. preuve Modèles –Système de transition du programme –Propriété à vérifier : formule fi – U mod fi Function f(x) Int x; For (0;i;j) {……} Programme nest plus une boite noire.

15 QSL,27 Novembre 200115 Vérification par modèle Système de transition (Structure de Kripke Formules –LTL, CTL, CTL* sur U,s |= (p1 U Accept) => G |= F Vérifier : comparer les OBDDs s P1 P2 P3 Accept

16 QSL,27 Novembre 200116 Branching programs Succinct representation of relations Intractable for: –Multiplication –Connectivity, Bipartition OBDD : Oriented Binary Decision Diagram v1 v2 0 1 R(v1,v2,….vn) vn

17 QSL,27 Novembre 200117 Vérification probabiliste Propriétés : LTL : p1 U p2 Prob [ p1 U p2 ] > a Espace probabiliste: Ensemble des chemins Prob [ p1 U p2 ]=3/8 p1 p2

18 QSL,27 Novembre 200118 Calcul de la probabilité Calcul de Prob [ p1 U p2 ] –C.Y. 95, Hanson et Johnson 94 S1= { s : M |= P1(s) } S+= { s : M |= E(p1 U p2 )}, S0=S-S+ Soit xi = Prob [ p1 U p2 ] depuis i xi = 1 si i dans S1 xi= 0 si i dans S0 xi= Somme p(i,j) xj X= A.X +B, système de taille N !!

19 QSL,27 Novembre 200119 Système PRISM Université de Birmingham, Marta Kwiatkowska SMV : propriétés déterministes AX+B=C : probabilistes AX+B < C : non-déterministes Vérification de protocoles : Consensus de Aspnes et Herlihy, CAV 2001

20 QSL,27 Novembre 200120 Protocoles cryptographiques https (SSL, Secure Socket layer) –Authentification du serveur (certificat) –(Clé de session).RSA –Cryptage.DES Implémentations –Netscape, Open-SSL, Apache-SSL Propriété : – clé de session reste secréte!! –Difficile de décoder –Authentification correcte –……

21 QSL,27 Novembre 200121 Protocoles cryptographiques Process Equivalence Mitchell, Scedrov, 1998,99 P= epsilon Q si pour tout programme (contexte ) C, v Prob[C.P =v] - Prob[C.P =v] < epsilon Pn= f Qn si pour tout programme (contexte ) C, v Prob[C.P =v] - Prob[C.P =v] < 1/f(n) P= Q si Pn = f Qn pour tout polunome f Exemple : Générateur aléatoire = Générateur pseudo aléatoire

22 QSL,27 Novembre 200122 Abstraction Probabiliste Test de propriété : k-colorabilité Abstraction dun programme? Programmme correct => U,G |= F Program loin detre correct => Prob [U,G |= not F]>2/3 Collaboration F. Magniez, S. Laplante, R. Lassaigne, S. Peyronnet.

23 QSL,27 Novembre 200123 Abstraction Probabiliste Abstraction dun programme? Programme C A[i,j] B[i,j] sous-graphe aléatoire Variables u, v u, v Taille de lOBDD : 2,m=1/epsilon m

24 QSL,27 Novembre 200124 Conclusion Vérification de propriétés: –Testeurs Vérification de programmes: –Déterministes : Modèles, OBDD –Probabiliste : systèmes linéaires –Non déterministe : encadrements Approximation de la vérification –Testeurs


Télécharger ppt "QSL,27 Novembre 20011 Vérification probabiliste Université Paris II Michel de Rougemont 1.Algorithmes probabilistes qui."

Présentations similaires


Annonces Google