1 / 21

Probabilistically Checkable Proofs Theorem (PCP THEOREM)

Probabilistically Checkable Proofs Theorem (PCP THEOREM). Ομιλητής Ασημακόπουλος (Ευ)Άγγελος. Εισαγωγή. Γλώσσα L– Κάποιο πρόβλημα απόφασης (πχ. 3-SAT, Vertex Cover μικρότερο από k)

Télécharger la présentation

Probabilistically Checkable Proofs Theorem (PCP THEOREM)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Probabilistically Checkable ProofsTheorem (PCP THEOREM) Ομιλητής Ασημακόπουλος (Ευ)Άγγελος

  2. Εισαγωγή Γλώσσα L– Κάποιο πρόβλημα απόφασης (πχ. 3-SAT, Vertex Cover μικρότερο από k) Κωδικοποίηση της L στο δυαδικό σύστημα (εμείς χρησιμοποιούμε το ελληνικό αλφάβητο και κάποια αριθμητικά σύμβολα – ASCII) Στην L ανήκουν οι συμβολοσειρές (strings) οι οποίες είναι δυαδικές κωδικοποιήσεις των στιγμιότυπων (instances) του αρχικού προβλήματος οι οποίες έχουν λύση.

  3. NP Μια γλώσσα L ανήκει στην κατηγορία προβλημάτων/γλωσσών NP αν υπάρχει μία Μηχανή Turing Μ (verifier) που μπορεί να αποφασίσει σε πολυωνυμικό χρόνογια κάθε string • Αν το τότε υπάρχει κάποιο string που ονομάζεται πιστοποιητικό (certificate) με |y| = poly(|x|) έτσι ώστε Μ(x,y) accepts. Το πιστοποιητικό πρόκειται για μία λύση του προβλήματος x. (completeness) • Αν το τότε για κάθε string |y| = poly(|x|) Μ(x,y) rejects. (soundness)

  4. NP Verifier Certificate y Verifier Instance x

  5. Γενικεύοντας τον NPverifier Θα φτιάξουμε μια πιο γενική μηχανή Turing, η οποία εκτός από το instance x και το certificate y θα διαβάζει και ένα τυχαίο αριθμό. Αυτός ο αριθμός θα είναι κωδικοποιημένος σε bits. Θα την χρησιμοποιήσουμεγια να λύσουμε προβλήματα μεγιστοποίησης/ελαχιστοποίησης. Από εδώ και εμπρός το y θα το ονομάζουμε απόδειξη (proof).

  6. PCP - Verifier Proof y 1 0 1 1 0 1 0 Verifier Instancex

  7. PCP – Ορισμός Μια γλώσσα L ανήκει στην κατηγορία προβλημάτων/γλωσσών PCP(r(n),q(n))(όπου r(n) τυχαίος αριθμός bits και q(n) αριθμός bits που κοιτάει ο verifier από την απόδειξη) αν υπάρχει μία Μηχανή Turing Μ (verifier) που για κάθε string

  8. PCP – Σχόλια O verifier accepts or rejects ανάλογα με τα bits που διαβάζει από την απόδειξη q(n). Τα bits αυτά εξαρτώνται από τα τυχαία r(n) που θα διαβάσει αρχικά ο verifier. Υπάρχουν 2r(n)πιθανά ενδεχόμενα. όπου n = |x|. Προφανώς η παραπάνω διαδικασία μπορεί να επαναλαμβάνεται. Οι αριθμοί q(n) και r(n) έχουν σε κάθε επανάληψη τον ίδιο αριθμό από bits.

  9. Hardness of Approximation Το PCP θεώρημα χρησιμοποιείται για να υπολογίσει το hardness of approximation, δηλαδή για να δείξουμε lower bounds σε ένα πρόβλημα μεγιστοποίησης/ ελαχιστοποίησης. Τα όρια μπαίνουν από το soundness.

  10. Θεώρημα PCP NP=PCP(O(logn),O(1)) Όπου n = |x|. Ισχύει επίσης και NP=PCP(0,poly(n)). Δείτε τις μηχανές.

  11. Έστω verifier M • Μπορούμε να φτιάξουμε σε πολυωνυμικό χρόνο έναν άλλο ντετερμινιστικό verifier M’ ο οποίος θα εξομοιώνει όλα τα δυνατά ενδεχόμενα (είναι 2Ο(logn)εξ’ορισμού) και θα ελέγχει Pr(M(x,y)=accept) για όλα τα δυνατά y, τα οποία εξ’ορισμού έχουν σταθερό μέγεθος. • O M’ accepts αν και μόνο αν ο M accepts σε κάθε δυνατό ενδεχόμενο. Πολύ δύσκολο να αποδειχθεί!!!

  12. MAX-3SAT • Πρόκειται για την maximization εκδοχή του 3-SAT. • Έχουμε n variables και m clauses με τον αριθμό των clauses να είναι πολυωνυμικά μεγαλύτερος από τις μεταβλητές.

  13. ΜΑΧ-3SAT και PCP • NP = PCP(O(log(n)),O(1)) ↔ Υπάρχει μία πολυωνυμική αναγωγή από οποιαδήποτε NP-Complete Γλώσσα L στο ΜΑΧ-3SAT, αντιστοιχώντας instancesx της L σε φόρμουλες φ του MAX-3SAT έτσι ώστε: Σκεφτείτε το 3-SAT και το c ως ποσοστό των clauses που μπορούν να επαληθευθούν.

  14. Poly Reduction MAX3-SAT NP=PCP(O(logn),O(1)) Έστω ότι υπάρχει πολυωνυμική αναγωγή από τη γλώσσα L στο MAX3-SAT (βολική η 3-SAT γλώσσα). Χρησιμοποιώντας logm από τα τυχαία bits ο verifier διαλέγει κάποια clause ομοιόμορφα τυχαία. Στη συνέχεια ο verifier διαβάζει από την proof την ανάθεση τιμών που αντιστοιχούν για αυτή την clause. Επειδή διαβάζει μόνο 3 αναθέσεις μεταβλητών ο χρόνος είναι σταθερός. Άρα έχω συνολικά χρόνο logm,3= Ο(logn),O(1). Θυμηθείτε αν έχω m bits μπορώ να παράγω 2mδιαφορετικούς αριθμούς. Θυμηθείτε ότι ο αριθμός των clauses είναι πολυωνυμικά μεγαλύτερος από τις μεταβλητές

  15. Poly Reduction MAX3-SAT NP=PCP(O(logn),O(1)) Completeness: Αν x ανήκει στην L, τότε υπάρχει assignment y ώστε να ικανοποιούνται όλες οι clauses.Αν proof = y τότε Pr(M(x,y)=accept) = 1. Soundness: Αν x δεν ανήκει στην L, τότε όλα τα πιθανά assignments ικανοποιούν το πολύ ένα ποσοστό c των clauses. Άρα για όλες τις proofs y ισχύει Pr(M(x,y)=accept) ≤ c. Μπορούμε να αυξήσουμε την πιθανότητα του Soundness με κάποιο σταθερό αριθμό επαναλήψεων. Άρα NP=PCP(O(logn),O(1))

  16. NP=PCP(O(logn),O(1))  Poly Reduction MAX3-SAT • Έστω γλώσσα L NP και ότι έχειPCP(O(logn),O(1)). • Έστω ότι η proof y έχει Y1,Y2,…,Y|Y| bits. • Έστω ένα τυχαίο string r μεγέθους q=|r| που χρησιμοποιείται από το verifier για να διαλέξει τυχαία bits από την proof. • Έστω αυτά τα bits • Ορίζω έναν περιορισμό για αυτά τα bits • Συνολικά υπάρχουν 2r(n) = 2O(logn)τέτοιοι περιορισμοί.

  17. Constraint Satisfaction Problem • Έχω το νέο πρόβλημα μεγιστοποίησης να ικανοποιήσω τους περισσότερους από αυτούς τους περιορισμούς. • Οι περιορισμοί ικανοποιούν υποσύνολα του αρχικού instancex. • Στην πραγματικότητα πρόκειται για το ίδιο πρόβλημα με το να κατασκευάσω μία απόδειξη y ώστε να μεγιστοποιήσω τη πιθανότητα o verifier accepts. (Όσους περισσότερους περιορισμούς ικανοποιήσω, τόσα πιο συχνά θα αποδέχεται ο verifier). • Completeness: • Δηλαδή υπάρχει assignment στις όπου ικανοποιούνται όλοι οι περιορισμοί. • Soundness: • Δηλαδή κάθε assignment των μεταβλητών μπορεί να ικανοποιήσει λιγότερο από το ½ των περιορισμών.

  18.  MAX3-SAT • Τέλος θα πάρω το instance του Constraint Satisfaction Problem που έφτιαξα και θα το κάνω αντιστοιχία σε ένα instance του MAX-3SAT έτσι ώστε: • OPT(I)=1  OPT(φ)=1 • OPT(I)< OPT(φ) < 1- *(clauses MAX3-SAT) Θυμηθείτε κάθε boolean formula μπορεί να μετατραπεί σε CNF μορφήχρησιμοποιώντας το πολύ 2q clauses και q literals σε κάθε clause όπου q o αρχικός αριθμός των μεταβλητών. Θυμηθείτε κάθε CNF formula μπορεί να γίνει 3-SAT formula προσθέτοντας το πολύ q επιπλέον μεταβλητές το πολύ q επιπλέον clauses όπου q o αρχικός αριθμός των μεταβλητών (το q είναι άνω φράγμα). • Τελικά θα έχω το πολύ q2q επιπλέον clauses.

  19. Τελικά έχω: • OPT(I)=1  OPT(φ)=1 • OPT(I)< OPT(φ) < 1- • Αν υπάρχει assignment που να ικανοποιεί όλα τα Yi τότε ικανοποιούνται και όλες οι 3-SAT clauses. • Αν για κάθε assignment για τα Yi, τουλάχιστον το ½ των περιορισμών δεν ικανοποιούνται τότε οποιοδήποτε assignment θα ικανοποιεί το πολύ 1- από τις 3-SAT clauses

  20. Συμπέρασμα- Σύγκριση NP - PCP Προβλήματα απόφασης Δεν υπάρχει τυχαιότητα. Αν το x ανήκει στην L υπάρχει certificate για το οποίο Μ(x,y) accepts Αν το x δεν ανήκει στην L τότε Μ(x,y) rejects για κάθε y. Το certificate πρέπει να διαβαστεί ολόκληρο. 3-SAT Πιο ειδικός Verifier Προβλήματα ελαχιστοποίησης/ μεγιστοποίησης Ύπαρξη τυχαίου αριθμού που εκφράζεται με random bits. Αν το x ανήκει στην L υπάρχει proof για το οποίο Pr(M(x,y)=accept)=1. Αν το x δεν ανήκει στην L τότε Pr(M(x,y)=accept) < ½ για κάθε y. To proof δεν είναι απαραίτητο να διαβαστεί ολόκληρο. MAX-3SAT Πιο γενικός verifier (PCP(0,poly(n)) = NP )

  21. Τέλος Παρουσίασης Απορίες και σχόλια… Πηγή: The PCP Theorem from cs 8002 Georgia Tech 04 Σας ευχαριστώ για την παρακολούθηση!

More Related