ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΠΑΡΑΓΟΝΤΟΠΟΙΗΣΗΣ ΑΚΕΡΑΙΩΝ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΠΑΡΑΓΟΝΤΟΠΟΙΗΣΗΣ ΑΚΕΡΑΙΩΝ"

Transcript

1 ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΠΑΡΑΓΟΝΤΟΠΟΙΗΣΗΣ ΑΚΕΡΑΙΩΝ Διπλωματική Εργασία Κυριακόπουλος Χαράλαμπος EΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΣΠΥΡΑΚΗΣ ΠΑΥΛΟΣ ΣΥΝΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: KYΡΟΥΣΗΣ ΕΛΕΥΘΕΡΙΟΣ Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Πατρών Οκτώβριος 2011

2

3 Στους γονείς μου, και την αδερφή μου.

4

5 Πρόλογος Στην παρούσα Διπλωματική Εργασία θα ασχοληθούμε με το πασίγνωστο πρόβλημα της Παραγοντοποίησης Ακεραίων. Η προσέγγισή μας θα είναι, φυσικά, από τη μεριά της Επιστήμης των Υπολογιστών και της Υπολογιστικής Πολυπλοκότητας. Θα προσπαθήσουμε να κατανοήσουμε γιατί η Παραγοντοποίηση Ακεραίων θεωρείται ένα υπολογιστικά δύσκολο πρόβλημα, και να δούμε τις πρακτικές εφαρμογές και συνέπειες αυτής της θεώρησης. Η συγγραφή αυτής της Διπλωματικής δε θα είχε επιτευχθεί χωρίς την αμέριστη βοήθεια του επιβλέποντα Καθηγητή μου κ. Ε. Κυρούση. Θέλω για αυτόν το λόγο να τον ευχαριστήσω θερμότατα για την προσπάθεια που κατέβαλε μαζί μου στο πολύ ωραίο αυτό ταξίδι από τις έννοιες της Θεωρίας των Γράφων, σε αυτές της Θεωρίας Αριθμών και της Υπολογιστικής Πολυπλοκότητας. Η συνεργασία μας ήταν για μένα εμπειρία ανεκτίμητη. Τέλος, θα ήθελα να ευχαριστήσω τον κ. Π. Σπυράκη για τη γενική εποπτεία της Διπλωματικής και τις καίριες παρατηρήσεις του. 5

6 6

7 Περιεχόμενα 1 Εισαγωγή Integer Factoring P = NP? NP - completeness Func on Problems FNP completeness TFNP Σημασιολογικές vs Συντακτικές κλάσεις Συντακτικές Υποκλάσεις της TFNP Complete Προβλήματα στις Υποκλάσεις Οι Υποκλάσεις της TFNP TFNP FNP PPA PPAD-PPADS PPAD PPADS PPP PLS Σχέσεις των TFNP υποκλάσεων Βασικές Έννοιες της Θεωρίας Αριθμών Εισαγωγή Διαιρετότητα και Κλάσεις Ισοδυναμίας Μέγιστος Κοινός Διαιρέτης Αριθμητική modulo n Επίλυση γραμμικών εξισώσεων modulo n Κινέζικο Θεώρημα Υπολοίπων Δυνάμεις modulo n Πρωτόκολλο Δημοσίου Κλειδιού RSA Integer-Factoring TFZPP PPP Integer-Factoring m Order-Finding

8 4.2 Ο Αλγόριθμός μας Προηγούμενα Αποτελέσματα GIF PPA Επόμενα Αποτελέσματα

9 Κεφάλαιο 1 Εισαγωγή I do not try to dance be er than anyone else. I only try to to dance be er than myself. M. Baryshnikov 1.1 Integer Factoring Το πρόβλημα της παραγοντοποίησης ακεραίων (Integer-Factoring) είναι ένα από τα πιο γνωστά και παλιά προβλήματα της Θεωρίας Αριθμών. Στην επιστήμη των υπολογιστών, όπου εξέχοντα ρόλο στη μελέτη ενός προβλήματος παίζει η πολυπλοκότητα του, ένα πολύ γνωστό ανοιχτό πρόβλημα είναι κατά πόσο υπάρχει αποδοτικός αλγόριθμος για τον υπολογισμό των πρώτων παραγόντων p 1, p 2,..., p m ενός ακεραίου n = p e 1 1 p e 2 2 p e m Στη γλώσσα της θεωρίας πολυπλοκότητας με τον όρο αποδοτικό αλγόριθμο εννοούμε ρητά έναν αλγόριθμο που εκτελείται σε πολυωνυμικό χρόνο σε σχέση με το μήκος της εισόδου του. Οποιονδήποτε αλγόριθμο δεν εκτελείται σε πολυωνυμικό, αλλά σε εκθετικό χρόνο σε σχέση με το μέγεθος εισόδου, τον θεωρούμε μη αποδοτικό ή, αλλιώς, πρακτικά ανεφάρμοστο. Αντίστοιχα, ένα πρόβλημα για το οποίο δεν έχει βρεθεί πολυωνυμικός αλγόριθμος θεωρείται πρακτικά ανεπίλυτο. Αρχικό βήμα για να ορίσουμε το χρόνο εκτέλεσης ενός αλγορίθμου είναι να δούμε ποιο είναι το μήκος της εισόδου του. Στο πρόβλημα της παραγοντοποίησης αν ο ακέραιος προς παραγοντοποίηση είναι ο αριθμός n, τότε η είσοδος μας είναι μόνο τα log 2 n δυαδικά ψηφία που χρησιμοποιούμε για την αναπαράσταση του, και όχι το απόλυτο μέγεθος του n. Ο τετριμμένος αλγόριθμος παραγοντοποίησης ενός ακεραίου είναι ο εξής: Για είσοδο έναν ακέραιο n ψάξε για πιθανούς διαιρέτες μέχρι τον n Παρατηρούμε, όμως, ότι o απλός αυτός αλγόριθμος είναι εκθετικός ως προς το μήκος της εισόδου, αφού θα πάρει χρόνο n = 2 log 2 n 2. Θα πρέπει λοιπόν να αναζητήσουμε κάποιον άλλο αλγόριθμο για την επίλυση του προβλήματος σε πολυωνυμικό χρόνο. 9 m.

10 Για να αποσαφηνίσουμε την έννοια της πρακτικής ανεπιλυτότητας ενός προβλήματος για το οποίο δεν έχει βρεθεί πολυωνυμικός αλγόριθμος πρέπει να πούμε ότι υπονοεί πάντα σχετικά μεγάλου μήκους εισόδους. Συγκεκριμένα για το πρόβλημα της παραγοντοποίησης προφανώς δεν είναι αδύνατον να παραγοντοποιήσεις έναν αριθμό με 11 bits, σαν το 1521 π.χ. χρησιμοποιώντας τον προηγούμενο αλγόριθμο. Αντιθέτως είναι πολύ εύκολο. Είναι όμως αδύνατον, σε οσοδήποτε χρόνο, να παραγοντοποιήσεις έναν αριθμό 1024 bits χωρίς τη χρήση πολυωνυμικού αλγορίθμου. Λόγω του ότι πάρα πολλές ερευνητικές προσπάθειες πάνω στο πρόβλημα για πάνω απο 150 χρόνια δεν έχουν καταφέρει να ευοδωθούν, και να βρεθεί πολυωνυμικός αλγόριθμος για την παραγοντοποίηση ακεραίων, εικάζεται ότι δεν υπάρχει τέτοιος αλγόριθμος, γιατί το πρόβλημα είναι, όπως λέγεται, εγγενώς δύσκολο. Πάνω σε αυτή την εικασία της ανυπαρξίας αποδοτικού αλγορίθμου για το Integer-Factoring¹ στηρίζονται σήμερα αρκετά πρωτόκολλα κρυπτογραφίας. Τα πρωτόκολλα αυτά είναι ευρέως γνωστά με το όνομα RSA. Αν κάποτε ανακαλυφθεί πολυωνυμικός αλγόριθμος για το Factoring, τα πρωτόκολλα RSA, πάνω στα οποία βασίζεται ένα πολύ μεγάλο κομμάτι της σύγχρονης κρυπτογραφίας, αυτομάτως θα καταρρεύσουν. Για αυτό το λόγο, το Integer-Factoring να αποτελεί, ίσως, ένα από τα ελάχιστα προβλήματα που οι άνθρωποι θα ήθελαν να είναι πράγματι μη επιλύσιμο σε πολυωνυμικό χρόνο! 1.2 P = NP? Τι ακριβώς σημαίνει, όμως, ότι για ένα πρόβλημα όπως το Factoring δεν υπάρχει πολυωνυμικός αλγόριθμος; Και πως κάτι τέτοιο, η ανυπαρξία δηλ. ενός πολυωνυμικού αλγορίθμου για ένα πρόβλημα, θα μπορούσε να αποδειχθεί μαθηματικά; Η αλήθεια είναι ότι με την απόλυτη έννοια της απόδειξης για κανένα πρόβλημα δεν έχει δειχθεί μέχρι σήμερα ότι δεν επιδέχεται αλγόριθμο πολυωνυμικού χρόνου, και συνεπώς είναι πρακτικά ανεπίλυτο. Στην προσέγγιση αυτού του ζητήματος βρισκόμαστε εξαρχής αντιμέτωποι με το θεμελιώδες ερώτημα της θεωρίας πολυπλοκότητας. Αυτό δεν είναι άλλο από το P = NP?. Το ερώτημα που ουσιαστικά λέει: Είναι τόσο εύκολο να βρω μια λύση σε ένα πρόβλημα, όσο το να επαληθεύσω την ορθότητα της αν ξέρω τη λύση αυτή;. Γνωρίζουμε ότι μια ενδεχόμενη θετική απάντηση στο ερώτημα P = NP?, θα σήμαινε ότι μια πληθώρα σημαντικών όσο και πρακτικών προβλημάτων που ανήκουν στην κλάση NP, και σήμερα θεωρούνται ανεπίλυτα στην πράξη, τελικά επιδέχονται πολυωνυμικού αλγορίθμου και είναι επιλύσιμα σε αποδοτικό χρόνο. Παρόλο που κάτι τέτοιο θα ήταν ιδανικό, υπάρχουν βάσιμες υποψίες να πιστεύουμε ότι δεν είναι αλήθεια. Η πλειοψηφία των ερευνητών πιστεύει δηλ. ότι στην πραγματικότητα ισχύει P NP, παρόλο που τα υπάρχοντα μαθηματικά μας ίσως και να μην επαρκούν για να το αποδείξουμε. Ένα πολύ σημαντικό πρόβλημα στη θεωρία πολυπλοκότητας είναι το λεγόμενο SAT (boolean sa sfiability problem). Ορίζεται ως το πρόβλημα της ικανοποίησης ή όχι μιας λογικής πρότασης που αποτελείται από λεξιγράμματα (δηλ. μεταβλητές ή αρνήσεις τους) που συνδέονται μεταξύ τους με τους τελεστές (and), (or), (not). Η ικανοποίηση ή όχι της πρότασης προκύπτει από την ανάθεση τιμών 0 (false) ή 1 (true) στις μεταβλητές της πρότασης. Ένα στιγμιότυπο του SAT π.χ. είναι: ϕ = (x 1 x 2) (x 2 x 3 ) (x 1 x 3), το οποίο αληθεύει για την ¹ή απλά Factoring 10

11 ανάθεση x 1 = 1 x 2 = 1 x 3 = 0. Πρέπει επίσης να παρατηρήσουμε ότι για τέτοιου είδους προβλήματα απόφασης, σαν το SAT, τα αληθή στιγμιότυπα τους ορίζουν μια αντίστοιχη γλώσσα. Δηλ. εδώ η γλώσσα SAT αποτελείται από όλες τις αληθεύσιμες λογικές προτάσεις. SAT = { ϕ η ϕ είναι αληθεύσιμη λογική πρόταση}. Ένα πρόβλημα ανήκει στην P όταν υπάρχει για αυτό πολυωνυμικός αλγόριθμος που να το επιλύει. Το SAT ανήκει στην κλάση ΝP. Γενικά ένα πρόβλημα ανήκει στην κλάση NP όταν για κάθε στιγμιότυπο (π.χ. μια λογική πρόταση) του προβλήματος, και δοθέντος ενός πιστοποιητικού (π.χ. μια αληθοποιό τιμοδοσία) να μπορούμε να απαντήσουμε ότι το στιγμιότυπο ανήκει στην αντίστοιχη γλώσσα που ορίζει το πρόβλημα σε πολυωνυμικό χρόνο. Αν μας δώσει κάποιος π.χ. στο SAT μια τιμοδοσία που να καθιστά την πρόταση αληθή μπορούμε να επαληθεύσουμε πολύ έυκολα, απλά αντικαθιστώντας την κάθε μεταβλητή με την τιμή της, ότι το στιγμιότυπο ανήκει στη γλώσσα SAT. Γενικά ισχύει φυσικά ότι P NP, καθώς κάθε πρόβλημα που είναι πολυωνυμικά επιλύσιμο είναι και πολυωνυμικά επαληθεύσιμο NP - completeness Αναζητώντας τα όρια της θεωρίας υπολογισμού πριν από κάποια χρόνια (1970) ο Stephen Cook ανακάλυψε ότι το πρόβλημα αυτό, το SAT, είχε μια σχεδόν μαγική ιδιότητα. Μπορούσαν να αναχθούν σε αυτό όλα τα προβλήματα που ανήκαν στην κλάση NP. Το SAT, λοιπόν, συγκέντρωνε όλη την πολυπλοκότητα της κλάσης NP και παράλληλα αντιπροσώπευε όλη τη δυσκολία της. Χαρακτηρίστηκε για αυτό το λόγο NP-complete (NP-πλήρες) πρόβλημα. Αυτό πρακτικά σήμαινε ότι αν κάποτε βρισκόταν ένας πολυωνυμικός αλγόριθμος για το SAT, ταυτόχρονα θα ίσχυε P = NP, και κάθε πρόβλημα στη NP θα έπαυε να είναι δύσκολο. Από τότε πάρα πολλά και γνωστά προβλήματα έχουν αποδειχθεί NP-complete [26] όπως το SAT. Για να αποδειχθεί ένα πρόβλημα A ότι είναι NP-complete, είναι αναγκαίο να δειχτούν δύο πράγματα: (i) A NP και (ii) A is ΝP-hard: που σημαίνει ότι κάθε πρόβλημα στην NP ανάγεται στο Α σε πολυωνυμικό χρόνο. Το σκέλος (ii) γίνεται συνήθως με άμεση αναγωγή από ένα ήδη γνωστό NP-complete πρόβλημα που (χρησιμοποιείται ως βάση) στο πρόβλημα Α, που θέλουμε να δειξουμε complete. Ξεκινώντας δηλ. από το SAT αποδεικνύουμε ότι το SAT ανάγεται σε κάποιο πρόβλημα B σε πολυωνυμικό χρόνο (SAT P B), άρα και το B είναι NP-hard (και μπορεί να χρησιμοποιηθεί ως βάση) κ.ο.κ. Αρκετοί ερευνητές για πάνω από 40 χρόνια προσπαθούσαν, και ίσως προσπαθούν, να βρουν ένα πολυωνυμικό αλγόριθμο για ένα από αυτά τα NP-complete προβλήματα. Ένα τέτοιο αποτέλεσμα, βέβαια, θα μας έδινε άμεσα πολυωνυμικούς αλγορίθμους για όλα τα προβλήματα της κλάσης NP (αφού όλα ανάγονται σε ένα NP-complete), και θα σήμαινε ότι P = NP. Δυστυχώς καμία προσπάθεια από αυτές δεν έχει στεφθεί, μέχρι στιγμής, με επιτυχία, και για αυτό οδηγούμαστε στην, μάλλον, ισχυρή πεποιήθηση ότι υπάρχουν πράγματι προβλήματα που δεν επιδέχονται πολυωνυμικού αλγορίθμου. Ότι υπάρχουν δηλ. εγγενώς δύσκολα προβλήματα, και τελικά ισχύει P NP. Έτσι, πάνω σε αυτή την πεποιήθηση, είναι κοινώς αποδεκτό ότι όταν ένα πρόβλημα αποδεικνύεται NP-complete, αυτόματα θεωρείται απίθανο να μπορεί να επιλυθεί σε αποδοτικό χρόνο. Απαντώντας, λοιπόν, στο αρχικό ερώτημα της ενότητας του πως δείχνουμε ότι ένα πρόβλημα είναι υπολογιστικά δύσκολο και δεν επιδέχεται 11

12 πολυωνυμικού αλγορίθμου, θα λέγαμε ότι έχουμε μια ισχυρότατη ένδειξη για αυτό όταν το συγκεκριμένο πρόβλημα αποδεικνύεται NP-complete. 1.3 Func on Problems Πριν συνεχίσουμε, είναι μάλλον αναγκαίο να κάνουμε μια διάκριση μεταξύ δυο διαφορετικών ειδών προβλημάτων όπως το SAT και το Factoring -έτσι όπως το ορίσαμε αρχικά. Πρέπει να παρατηρήσουμε ότι τα δυο προβλήματα έχουν μια βασική διαφορά. Σε ένα πρόβλημα σαν το SAT μας δίνεται μια λογική πρόταση, και πρέπει να απαντήσουμε αν υπάρχει ανάθεση τιμών 0 και 1 στις μεταβλητές της που να την ικανοποιεί. Δηλ. η απάντηση μας είναι ναι αν υπάρχει τουλάχιστον μία τέτοια ανάθεση, και όχι αν δεν υπάρχει καμία. Αυτού του είδους τα προβλήματα, που απαντάμε απλά με ναι ή όχι, είναι τα λεγόμενα προβλήματα απόφασης. Από την άλλη στο πρόβλημα του Factoring μας δίνεται ένας σύνθετος αριθμός n και η απάντηση που ζητείται να δώσουμε είναι κάτι παραπάνω από ναι ή όχι. Πρέπει να απαντήσουμε με τους πρώτους παράγοντες του n. Αυτού του είδους τα προβλήματα, που απαιτείται η επιστροφή μιας τιμής στην έξοδο, λέγονται προβλήματα συναρτήσεων. Πολλές φορές είναι εύκολο να βρούμε το αντίστοιχο πρόβλημα συνάρτησης για ένα πρόβλημα απόφασης, και το αντίστροφο. Π.χ. το αντίστοιχο πρόβλημα συνάρτησης του SAT είναι το FSAT και ορίζεται όπως το SAT, με τη μόνη διαφορά ότι αν υπάρχει μια αληθοποιός τιμοδοσία για την πρόταση, θα πρέπει να απαντήσουμε με την τιμοδοσία αυτή, και όχι απλά με ένα ναι. Αν δεν υπάρχει φυσικά τέτοια τιμοδοσία, αρκεί να επιστραφεί ένα όχι. Προς την αντίθετη κατεύθυνση, το αντίστοιχο πρόβλημα απόφασης (decision version) του Factoring το ονομάζουμε Factor και ορίζεται ως εξής. FACTOR: Για έναν ακέραιο n και έναν r < n αν υπάρχει d, 1 < d < r, τέτοιο ώστε d n, επίστρεψε ναι. Αλλιώς, επίστρεψε όχι. Ορίζουμε τώρα ως FNP την κλάση των προβλημάτων συναρτήσεων που τα αντίστοιχα τους προβλήματα απόφασης ανήκουν στην NP. Ως FP ορίζεται η υποκλάση της FΝP που περιλαμβάνει τα προβλήματα συναρτήσεων που λύνονται σε πολυωνυμικό χρόνο. Δηλ FP FNP, σε πλήρη αντιστοιχία με P NP FNP completeness Ακριβώς όπως και στην NP, ένα πρόβλημα G είναι FNP-complete αν ισχύουν: (i) G FNP και (ii) G is FNP-hard. Η FNP-completeness ενός προβλήματος συνάρτησης έχει ακριβώς την ίδια βαρύτητα με την NP-completeness κάποιου προβλήματος απόφασης, καθώς ισχύει ότι FP = FNP αν και μόνον αν P = NP [19]. Κατανοούμε, λοιπόν, σύμφωνα με τα παραπάνω ότι αν δείξουμε ότι ένα πρόβλημα είναι FNP-complete τότε το πρόβλημα αυτό είναι, κατά πάσα πιθανότητα (εκτός εάν P = NP), υπολογιστικά δύσκολο. Το πρώτο FNP-complete πρόβλημα που δείχτηκε ήταν το FSAT [19], σε αντιστοιχία με το απλό SAT. 12

13 Επιστρέφοντας στο πρόβλημα αυτής της διπλωματικής, την Παραγοντοποίηση Ακεραίων, διαπιστώνουμε ότι αν αποδεικνύαμε κάτι αντίστοιχο για το Factoring, ότι δηλ. το Factoring είναι ένα FNP-complete πρόβλημα, θα είχαμε επιτύχει απόλυτα να δείξουμε την εγγενή δυσκολία του. Δυστυχώς, όμως, κάτι τέτοιο δε φαίνεται καθόλου πιθανό να ισχύει. Για να απαντήσουμε γιατί δεν είναι πιθανό, θα πρέπει να ορίσουμε και μια άλλη κλάση πολυπλοκότητας. Αυτή η κλάση είναι η συμπληρωματική της NP, η λεγόμενη co-np. Λέμε, λοιπόν, ότι ένα πρόβλημα ανήκει στην co-np όταν μπορούμε για κάθε στιγμιότυπο του προβλήματος, και δοθέντος ενός πιστοποιητικού, να απαντήσουμε ότι το στιγμιότυπο ΔΕΝ ανήκει στη γλώσσα που ορίζει το πρόβλημα. Π.χ. ένα πρόβλημα που ανήκει στην co-np είναι το SAT. Το SAT ορίζεται ως το συμπληρωματικό πρόβλημα του SAT. Δηλ. δοθείσης μια λογικής πρότασης πρέπει να απαντήσουμε ναι, αν δεν υπάρχει τιμοδοσία που να την καθιστά αληθή, ενώ αν υπάρχει τουλάχιστον μία, να απαντήσουμε όχι. Ένα πιστοποιητικό που να αποκλείει ένα στιγμιότυπο από το να ανήκει στη γλώσσα SAT είναι προφανώς μια αληθοποιός τιμοδοσία. Γενικά, μπορούμε να παρατηρήσουμε ότι για κάθε πρόβλημα A NP, το συμπληρωματικό του, A, co-np. Μπορούμε να δείξουμε τώρα γιατί δεν είναι πιθανό το Factoring να είναι FNP-complete πρόβλημα. Αρχικά παρατηρούμε ότι το Factor, η decision version του Factoring, ανήκει στην NP, καθώς μπορούμε να επαληθεύσουμε για ένα d ότι d n σε πολυωνυμικό χρόνο. Άρα το Factoring FNP. Κατά πάσα πιθανότητα όμως δεν ισχύει ότι Factoring is FNP-hard. Μια αρκετά ισχυρή ένδειξη για αυτό είναι η εξής: Αν το Factoring ήταν FNP-hard τότε θα υπήρχε μια αναγωγή από το FSAT στο Factoring. Επειδή εύκολα αποδεικνύεται ότι SAT m FSAT [19], θα ίσχυε και SAT m Factoring. Αυτή η αναγωγή θα κατασκεύαζε για κάθε πρόταση ϕ του SAT έναν σύνθετο ακέραιο n, έτσι ώστε κάθε λύση του Factoring (δηλ. κάθε γινόμενο πρώτων παραγόντων) θα μας έδινε μια λύση για το SAT (μια απάντηση ναι, ή μια απάντηση όχι). Αυτό σημαίνει ότι αν είχαμε ένα πιστοποιητικό - λύση για το Factoring (π.χ. ένα γινόμενο πρώτων παραγόντων), θα μπορούσαμε να επαληθεύσουμε ότι το SAT δεν έχει λύση για κάποιο στιγμιότυπο. Δηλ. SAT conp. Επειδή, όμως, όπως είπαμε, το SAT είναι NP-complete, θα είχαμε NP = conp. Ένα τέτοιο ενδεχόμενο, να ισχύει δηλ. ισότητα μεταξύ των δύο κλάσεων NP και co- NP, οι ερευνητές το θεωρούν σχεδόν τόσο πιθανό να ισχύει όσο και το P = NP. Καταλήγουμε ότι είναι σχεδόν απίθανο το Factoring να είναι FNP-complete, εκτός και αν NP = co-np. 1.4 TFNP Σύμφωνα με τα προηγούμενα, άρα, η κλάση FΝP δεν μπορεί, πιθανότατα, να μας βοηθήσει να εκφράσουμε τη δυσκολία προβλημάτων σαν το Factoring. Ακολουθώντας παρόμοια βήματα, και στην προσπάθεια τους να εκφράσουν τη δυσκολία του Factoring, ο C. Papadimitriou με τον N. Meggido έκαναν (το 1990) την παρατήρηση ότι το Factoring και ορισμένα άλλα προβλήματα της FNP έχουν κάτι που τα κάνει να διαφέρουν από τα υπόλοιπα προβλήματα της κλάσης. Έχουν, πάντοτε, τουλάχιστον μία λύση (το Factoring ακριβώς μία) για κάθε στιγμιότυπο τους. Για καθένα από αυτά τα προβλήματα υπάρχει ένα θεώρημα που εγγυάται την καθολική ύπαρξη λύσης για κάθε στιγμιότυπο. Π.χ. για κάθε στιγμιότυπο του Factoring γνωρίζουμε, από το Θεμελιώδες Θεώρημα της Θεωρίας Αριθμών, ότι κάθε ακέραιος n αναλύεται 13

14 σε γινόμενο πρώτων παραγόντων, n = p e 1 1 p e 2 2 p e i i n Z. Σχηματίστηκε με αυτό τον τρόπο μια νέα κλάση πολυπλοκότητας, η TFNP, ως η υποκλάση της FNP που περιέχει, ακριβώς, αυτά τα προβλήματα που έχουν πάντα λύση [17]. Εκτός από το Factoring, πολλά άλλα και γνωστά προβλήματα, από διαφορετικούς μαθηματικούς τομείς, βρίσκονται μέσα στην TFNP. Παραδείγματα τέτοιων total προβλημάτων είναι: Η εύρεση μιας μικτής ισορροπίας Nash σε οποιοδήποτε παίγνιο (2 και άνω παικτών) [21], ή η εύρεση ενός σταθερού σημείου Brouwer σε ένα συμπαγές και κυρτό σύνολο [21]. Το πρώτο πρόβλημα, είναι total από το διάσημο θεώρημα του Nash στη θεωρία παιγνίων [18]. Το δεύτερο, πηγάζει από το θεώρημα του Brouwer που λέει ότι μια συνεχής συνάρτηση F από ένα συμπαγές και κυρτό σύνολο στον εαυτό του έχει ένα σταθερό σημείο, τον υπολογισμό του οποίου ψάχνουμε στο συγκεκριμένο πρόβλημα. Άλλα γνωστά προβλήματα που ανήκουν στην κλάση TFNP είναι: η εύρεση 2 αντιδιαμετρικών σημείων σε μια σφαίρα που αντιστοιχίζονται στο ίδιο σημείο ενός ευκλίδειου χώρου (Borsuk Ulam problem) [21], και η εύρεση ενός τριχρωματικού τριγώνου σε ένα τετράγωνο που οι κορυφές του χρωματίζονται ακολουθώντας κάποιους κανόνες (Sperner problem) [21]. Την πληρότητα των προβλημάτων αυτών εγγυώνται το θεώρημα του Borsuk-Ulam, και το Λήμμα του Sperner αντίστοιχα Σημασιολογικές vs Συντακτικές κλάσεις Η ερώτηση που μας έρχεται αυθόρμητα είναι η εξής: Υπάρχει περίπτωση κάποιο από τα παραπάνω προβλήματα, και συνεπώς ίσως και το Factoring, να είναι TFNP-complete, και αποδεικνύοντας το να εγκλωβίσουμε κατά κάποιο τρόπο τη δυσκολία του; Δυστυχώς, η απάντηση είναι πάλι αρνητική. Στην TFNP συναντάμε μια διαφορετική δυσκολία αυτή τη φορά προκειμένου να δείξουμε completeness ενός προβλήματος. Η TFNP δεν είναι μια συνηθισμένη κλάση προβλημάτων σαν τις κλάσεις P, NP, FP, FNP, που ορίσαμε νωρίτερα. Πριν πούμε γιατί δεν είναι συνηθισμένη, πρέπει να αναφέρουμε έναν άλλο τυπικό τρόπο για να ορίζουμε αν ένα πρόβλημα ανήκει σε μια κλάση. Αυτός είναι μέσω των μηχανών Turing (T.M). Η μηχανή Turing είναι το βασικό υπολογιστικό μοντέλο της θεωρίας υπολογισμού. Χωρίζεται σε δύο κύριες κατηγορίες. Τη ντετερμινιστική μηχανή Turing (DTM) και τη μη ντετερμινιστική μηχανή Turing (NTM). Μια ντετερμινιστική T.M (DTM) μπορεί να θεωρηθεί ως ένας πρακτικά υλοποιήσιμος αλγόριθμος σε ένα υπολογιστικό σύστημα. Δέχεται μια είσοδο, και ακολουθώντας διάφορες μεταβάσεις παράγει μια έξοδο. Μια μη ντετερμινιστική T.M (NTM) είναι ένα θεωρητικό μοντέλο που δεν ανταποκρίνεται στην πραγματικότητα, μας βοηθάει όμως να ορίζουμε πότε ένα πρόβλημα ανήκει σε μια κλάση. Μια NTM σε οποιοδήποτε σημείο ενός υπολογισμού μπορεί να έχει περισσότερες από μία δυνατότητες να μεταβεί. Για μία είσοδο δηλ. μπορεί να παράγει πολλές εξόδους (αποδοχής ή απόρριψης) και εν τέλει αποδεχόμαστε αν τουλάχιστον ένας από τους κλάδους υπολογισμού καταλήγει σε αποδοχή. Ένας ισοδύναμος τρόπος να περιγράψουμε τα προβλήματα που ανήκουν στην NP με αυτόν που αναφέραμε νωρίτερα, τη χρήση πιστοποιητικών, είναι ο ακόλουθος: Ένα πρόβλημα ανήκει στην NP αν και μόνο αν υπάρχει NTM που να το διαγιγνώσκει σε πολυωνυμικό χρόνο. 14

15 Γενικά, λέμε ότι μια Τ.Μ διαγιγνώσκει ένα πρόβλημα όταν τερματίζει πάντα, απαντώντας ναι ή όχι, για κάθε στιγμιότυπο του προβλήματος. Μια NTM δηλ. θα διαγιγνώσκει ένα πρόβλημα αν τουλάχιστον ένας από τους κλάδους υπολογισμού της καταλήγει σε κατάσταση αποδοχής. Αντίστοιχα ένα πρόβλημα ανήκει στην P αν και μόνο αν υπάρχει DTM που να το διαγιγνώσκει σε πολυωνυμικό χρόνο. Βλέπουμε λοιπόν ότι υπάρχει ένας συντακτικός τρόπος να ορίζουμε πότε ένα πρόβλημα ανήκει σε μια από τις δύο κλάσεις. Για αυτό το λόγο, οι P και NP λέγονται συντακτικές κλάσεις προβλημάτων. Για την TFNP, από την άλλη, δεν υπάρχει ένας συντακτικός τρόπος να αναγνωρίσουμε μια μη ντετερμινιστική μηχανή Turing που διαγιγνώσκει ένα πρόβλημα της TFNP. Κάτι τέτοιο θα προϋπέθετε τη δυνατότητα αν μας έδιναν μια τέτοια μηχανή, να αναγνωρίζαμε ότι για κάθε είσοδο έχει, πάντοτε, έναν επιτυχή κλάδο υπολογισμού. Το πρόβλημα αυτό, στη θεωρία υπολογισμού, είναι μη διαγνώσιμο - δηλ. δεν έχει λύση. Η TFNP λέγεται, λοιπόν, μη συντακτική ή αλλιώς σημασιολογική κλάση. Οι σημασιολογικές κλάσεις δεν έχουν, κατά πάσα πιθανότητα, complete προβλήματα. Ο λόγος που συμβαίνει αυτό είναι ο εξής. Κάθε συντακτική κλάση σαν τις P, NP κ.α έχει σίγουρα ένα αρχικό complete πρόβλημα. Αυτό σαν γλώσσα εκφράζεται ως εξής: {(M, x) : M M and M(x) = yes } όπου M είναι το σύνολο των T.M που ορίζουν την κλάση, (π.χ. οι μηχανές πολυωνυμικού χρόνου για την κλάση P). Κάθε complete πρόβλημα μίας συντακτικά ορισμένης κλάσης απολαμβάνει αυτή την ιδιότητα του επειδή υπάρχει μια αναγωγή από την παραπάνω γλώσσα στο πρόβλημα αυτό. Π.χ. η απόδειξη της completeness του SAT έγινε ακριβώς με αναγωγή από αυτή τη γλώσσα της NP προς το SAT. H αντίστοιχη γλώσσα όμως για την κλάση TFNP και για τις άλλες σημασιολογικές κλάσεις [25] είναι μη διαγνώσιμη, όπως αναφέρθηκε μη τυπικά παραπάνω. Άρα συμπεραίνουμε ότι οι σημασιολογικές κλάσεις, σαν την TFNP, στερούνται complete προβλημάτων Συντακτικές Υποκλάσεις της TFNP Επιστρέφοντας, λοιπόν, στο αρχικό ζήτημα, ο C. Papadimitriou θέλοντας να εκφράσει με κάποιο τρόπο τη δυσκολία των προβλημάτων της TFNP είχε την εξής πρωτότυπη ιδέα: Αν ένα πρόβλημα είναι total, δηλ. έχει πάντα λύση, θα πρέπει να υπάρχει μια απόδειξη που να εγγυάται την ύπαρξη της λύσης αυτής. Αυτή η απόδειξη θα πρέπει να είναι μη κατασκευαστική, καθώς σε αντίθετη περίπτωση θα μπορούσαμε να κατασκευάσουμε απευθείας από την απόδειξη έναν αποδοτικό αλγόριθμο που να λύνει το πρόβλημα. Ο Papadimitriou παρατήρησε ότι οι αποδείξεις που εγγυούνταν την ύπαρξη λύσης για πολλά από τα προβλήματα της TFNP είχαν κάποιες κοινές αρχές. Βασίζονταν όλες ουσιαστικά σε, από πολύ παλαιότερα, γνωστά πορίσματα της θεωρίας των γράφων. Xώρισε, λοιπόν, τα προβλήματα της TFNP σε συντακτικές υποκλάσεις, ανάλογα με το πόρισμα στο οποίο βασίζεται η απόδειξη του totality του κάθε προβλήματος. Τα πορίσματα αυτά με τις αντίστοιχες κλάσεις που ορίζουν είναι τα εξής: Σε κάθε Διευθυνόμενο Ακυκλικό Γράφημα² υπάρχει ένας κόμβος καταβόθρα [δηλ ένας ²στο εξής ΔΑΓ 15

16 κόμβος με βαθμό εξόδου 0]. Η αντίστοιχη κλάση που πηγάζει από αυτό το πόρισμα είναι η PLS (Polynomial Local Search). Σε κάθε Διευθυνόμενο Γράφο με βαθμό εξόδου 1 και με ένα κόμβο με βαθμό εισόδου 0, υπάρχει ένας άλλος κόμβος με βαθμό εισόδου τουλάχιστον 2. Η αντίστοιχη κλάση που ορίζει το πόρισμα είναι η PPP (Polynomial Pigeonhole Principle). Σε κάθε Μη Διευθυνόμενο Γράφο το πλήθος των περιττού βαθμού κόμβων, είναι άρτιο. Αυτή η ιδιότητα ορίζει την κλάση PPA (Polynomial Parity Argument). Σε κάθε Διευθυνόμενο Γράφο, με έναν μη ισορροπημένο [βαθμός εισόδου βαθμός εξόδου] κόμβο, υπάρχει και δεύτερος μη ισορροπημένος κόμβος. Έτσι προκύπτει η PPAD (Polynomial Parity Argument in Directed Graphs). Όπως καταλαβαίνουμε καθένα από τα παραπάνω πορίσματα ορίζει ουσιαστικά και ένα πρόβλημα. Το πρόβλημα του να βρούμε αυτόν τον κόμβο που η ύπαρξή του είναι εγγυημένη από το πόρισμα. Σε μια πρώτη ανάγνωση μπορεί κάποιος να διερωτηθεί πως τα παραπάνω πορίσματα είναι μη κατασκευαστικά και εκφράζουν δύσκολα προβλήματα. Δεν είναι δηλ. τετριμμένο δοθέντος ενός γράφου να βρεις έναν κόμβο καταβόθρα σε πολυωνυμικό χρόνο; Η αλήθεια είναι ότι η δυσκολία εξαρτάται από το με ποιο τρόπο δίνεται ο γράφος ως είσοδος. Αν ο γράφος δίνεται ως είσοδος με μία εύλογη κωδικοποίηση, όπως π.χ. ένα πίνακα γειτνίασης, τότε πράγματι μπορούμε να βρούμε πολυωνυμικά, ως προς το πλήθος των κόμβων, ένα κόμβο καταβόθρα. Ένας πίνακας γειτνίασης είναι ένας πίνακας που το στοιχείο του (u, v) θα είναι 1, αν υπάρχει ακμή από τον κόμβο u στο v. Το μέγεθος του πίνακα είναι πάντα πολυωνυμικό ως προς το πλήθος των κόμβων, οπότε ο παραπάνω αλγόριθμος θα ήταν πράγματι πολυωνυμικός ως προς την είσοδο του. Αν όμως ο γράφος ορίζεται έμμεσα, π.χ. μέσω της περιγραφής του από ένα κύκλωμα, το να βρεις έναν τέτοιο κόμβο δεν είναι καθόλου εύκολο. Με τον όρο κύκλωμα εννοούμε απλά μια συνάρτηση που ορίζουμε εμείς, και μπορεί να υπολογίζει την έξοδο της σε πολυωνυμικό χρόνο. Για να διευκρινήσουμε τι εννοούμε, πρέπει αναγκαστικά να μιλήσουμε λίγο πιο μαθηματικά. Η PPAD, λοιπόν, ορίζεται ως η κλάση των προβλημάτων που ανάγονται στο ακόλουθο πρόβλημα που εκφράζει ακριβώς το πόρισμα που αναφέραμε παραπάνω. END OF THE LINE: Δοθέντων δύο κυκλωμάτων S και P, το καθένα από τα οποία έχει n bits εισόδου και n bits εξόδου, τέτοια ώστε S(P (0 n )) 0 n = P (S(0 n )), βρες μια είσοδο x {0, 1} n τέτοια ώστε P (S(x)) x ή S(P (x)) x 0 n Για να κατανοήσουμε το πρόβλημα, πρέπει να σκεφτούμε τα κυκλώματα P, S να ορίζουν ένα διευθυνόμενο γράφημα ως εξής: Υπάρχει ακμή από τον κόμβο u στον κόμβο v, αν και μόνο αν ισχύει S(u) = v και P (v) = u. Από τον ορισμό ισχύει ότι κάθε κόμβος έχει το πολύ βαθμό εισόδου και εξόδου ίσο με 1. Επίσης επειδή S(P (0 n ) 0 n = P (S(0 n ), παρατηρούμε πως ο κόμβος 0 n έχει βαθμό εισόδου 0 και βαθμό εξόδου 1, και για αυτό είναι μη ισορροπημένος. 16

17 Άρα από το parity argument στους διευθυνόμενους γράφους, θα πρέπει να υπάρχει και ένας δεύτερος μη ισορροπημένος κόμβος, διαφορετικός από την πηγή 0 n. Αν θέλουμε, συνεπώς, να λύσουμε το END OF THE LINE, η προφανής προσέγγιση είναι να ακολουθήσουμε το μονοπάτι από την πηγή 0 n μέχρι να βρεθεί η άλλη άκρη του μονοπατιού, που θα είναι ο κόμβος καταβόθρα που ζητάμε. Αυτός ο τρόπος όμως θα μας πάρει εκθετικό χρόνο ως προς την είσοδο, αφού όλοι οι κόμβοι του γραφήματος που ορίζονται από τα S και P είναι 2 n. Βλέπουμε, άρα, ότι αν θέλει κάποιος να λύσει το πρόβλημα γρηγορότερα ο μόνος τρόπος είναι να βρει έναν τρόπο να τηλεσκοπήσει το γράφημα, κοιτώντας κάπως στις λεπτομέρειες των κυκλωμάτων S και P... Φαίνεται, λοιπόν, ότι το END OF THE LINE είναι, όντως, ένα πειστικά δύσκολο πρόβλημα. Για τον τυπικό ορισμό των άλλων συντακτικών υποκλάσεων (PLS, PPP, PPA) της TFNP, που όρισε ο Papadimitriou, χρησιμοποιούνται αντίστοιχα προβλήματα με το END OF THE LINE, τα οποία θα οριστούν αυστηρά στο 2ο κεφάλαιο. Εντούτοις, αποκτάμε από το END OF THE LINE μια σοβαρή διαίσθηση γιατί αυτές οι κλάσεις, που βασίζονται σε πορίσματα της θεωρίας γράφων, είναι κλάσεις που θεωρούνται ότι όντως εκφράζουν διάφορα δύσκολα προβλήματα. Άρα, επιστρέφοντας σε όσα λέγαμε προηγουμένως, μια πιθανή απόδειξη για ένα πρόβλημα ότι είναι complete σε κάποια από αυτές τις κλάσεις, π.χ. PPAD-complete, θα αποτελούσε συνάμα μια πολύ ισχυρή ένδειξη της υπολογιστικής δυσκολίας του προβλήματος. Πόσο ισχυρή; Η αλήθεια είναι αναγκαστικά λίγο λιγότερο ισχυρή από την FNP-completeness, αφού όλες αυτές οι κλάσεις βρίσκονται μέσα στην FNP, και συνεπώς θα μπορούσε να ισχύει FNP FP, και PPAD = FP. Δε φαίνεται όμως κι αυτό καθόλου πιθανό ενδεχόμενο. Η πιθανότητα, τέλος, να ισχύει κάτι τέτοιο μειώνεται όσο περισσότερα complete προβλήματα βρίσκονται σε αυτή την κλάση Complete Προβλήματα στις Υποκλάσεις Μέχρι στιγμής, από τότε που ορίστηκαν οι υποκλάσεις της TFNP, έχουν αποδειχτεί complete σε αυτές αρκετά προβλήματα. Συγκεκριμένα, στην PLS, που ήταν και η πρώτη υποκλάση της TFNP που ορίστηκε, έχουν αποδειχτεί ότι είναι complete προβλήματα τοπικής αναζήτησης όπως: Η εύρεση ενός τοπικού ελάχιστου στο Lin-Kernighan ευρετικό αλγόριθμο για το TSP (Travelling Salesman Problem) [22], ή η εύρεση σταθερής διαμόρφωσης (μιας κατάστασης που συγκλίνει ένα δίκτυο) σε νευρωνικά δίκτυα Hopfield [14]. Στην PPA ο M.Grigni το 2001 απέδειξε ότι μια ειδική περίπτωση του Sperner, του προβλήματος που αναφέραμε πριν, είναι complete [12], αλλά πέραν αυτού δεν έχει δειχτεί κάποιο άλλο complete πρόβλημα. Στην PPP δεν έχουν βρεθεί ακόμα complete προβλήματα. Κατά πάσα πιθανότητα υπάρχουν και στις δυο αυτές κλάσεις αρκετά complete προβλήματα που δεν έχουν βρεθεί ακόμα, καθώς και η PPP και η PPA είναι πιο δύσκολες κλάσεις από την PPAD, αφού PPAD PPP και PPAD PPA, όπως αποδεικνύεται στο [21], και η PPAD περιέχει όπως θα δούμε τα πιο πολλά complete προβλήματα. Η PPAD, λοιπόν, είναι η κλάση που έχουν βρεθεί τα περισσότερα, μέχρι σήμερα, complete προβλήματα και συγκεντρώνει, για αυτό το λόγο, το μεγαλύτερο ενδιαφέρον. Στο [21] o Papadimitriou αποδεικνύει την PPAD completeness των υπολογιστικών προβλημάτων 3D-Sperner, 17

18 Brouwer Fixed-Point, Kakutani (γενίκευσης του προβλήματος του Brouwer) και του Borsuk- Ulam problem. Μέχρι πρόσφατα υπήρχε και στην PPAD μια στασιμότητα όσον αφορά την ανεύρεση νέων complete προβλημάτων, αλλά οι Daskalakis και Papadimitriou ανακάλυψαν το 2006 ότι η εύρεση μιας μικτής ισορροπίας Nash σε οποιοδήποτε παίγνιο άνω των 3 παικτών είναι ένα PPAD-complete πρόβλημα [9]. Με το αποτέλεσμα αυτό έδωσαν εκ νέου ερευνητικό ενδιαφέρον και προσοχή στις υποκλάσεις της TFNP. Έτσι, αμέσως μετά οι X.Chen και X.Deng απέδειξαν ότι το Nash ακόμα για 2 παίκτες [7] και επίσης το Sperner στις 2 διαστάσεις είναι PPAD-complete προβλήματα [6]. Και τα τρία τελευταία αποτελέσματα είναι εξαιρετικά σημαντικά, καθώς, εκτός των άλλων, φέρνουν κοντά δυο σχετικά πρόσφατους επιστημονικούς κλάδους, την Υπολογιστική Πολυπλοκότητα και την Αλγοριθμική Θεωρία Παιγνίων. Το πιο σημαντικό αποτέλεσμα, όμως, κατά τη γνώμη μας, είναι η PPAD-completeness του Nash, που δείχτηκε από τους Daskalakis και Papadimitriou. Αυτό, γιατί η συγκεκριμένη απόδειξη μας δείχνει και κάτι άλλο σε δεύτερη ανάγνωση. Ότι είναι δυνατόν η δυσκολία ενός προβλήματος της TFNP, όπως το Nash, που εκ πρώτης όψεως δε φαίνεται συνδυαστικού χαρακτήρα, όπως είναι π.χ. τα Sperner και Brouwer Fixed-Point, να μπορεί να εκφραστεί κι αυτή πλήρως μέσω της PPAD, ή κάποιας άλλης υποκλάσης της TFNP. Αυτό το συμπέρασμα πιστεύουμε είναι πολύ σημαντικό. Ο λόγος είναι ότι είναι η πρώτη φορά που ένα μη συνδυαστικό πρόβλημα αποδεικνύεται complete σε κάποια από τις υποκλάσεις της TFNP και δείχνει ότι ίσως αυτές οι κλάσεις χαρακτηρίζουν περισσότερα προβλήματα από όσα αρχικά διαφαινόταν. Μας δίνεται έτσι η δυνατότητα να υποθέσουμε ότι, πιθανότατα, υπάρχουν και άλλα προβλήματα στην TFNP σαν το Nash που δεν είναι καθαρά συνδυαστικά, αλλά στη βάση τους ίσως κρύβονται καλά κρυμμένα κάποια συνδυαστικά επιχειρήματα. Το Factoring, το κύριο πρόβλημα, όπως είπαμε, με το οποίο θα ασχοληθούμε σε αυτή τη διπλωματική, ίσως είναι ένα από αυτά! Αν θέλαμε, λοιπόν, να προσδιορίσουμε σε μια παράγραφο τους στόχους αυτής της διπλωματικής εργασίας, θα λέγαμε ότι είναι οι εξής: α) Να αναλύσουμε τυπικά μαθηματικά τα συνδυαστικά επιχειρήματα που βρίσκονται πίσω από κάθε μία από τις υποκλάσεις της TFNP, που όρισε ο Papadimitriou, και να κατανοήσουμε γιατί αυτές οι κλάσεις φαίνεται, όντως, να ορίζονται μέσω δύσκολων προβλημάτων. β) Να παρουσιάσουμε τις βασικές αρχές και τα θεμελιώδη θεωρήματα της Θεωρίας Αριθμών πάνω στα οποία βασίζεται το Factoring, καθώς και τις εφαρμογές που στηρίζονται στη διαφαινόμενη δυσκολία του προβλήματος. γ) Ιδανικά να βρούμε μία εκ των PPP, PPAD, PPA, συντακτικών υποκλάσεων, της TFNP στην οποία ανήκει το Integer-Factoring. δ) Και ιδανικότερα να δείξουμε ότι το πρόβλημα του Ιnteger-Factoring είναι complete σε μια από αυτές τις κλάσεις. 18

19 Κεφάλαιο 2 Οι Υποκλάσεις της TFNP The origins of graph theory are humble, even frivolous. N. Biggs, E. K. Lloyd, and R. J. Wilson 2.1 TFNP FNP Κάθε πρόβλημα της κλάσης FNP ορίζεται ως εξής: Έστω μια σχέση R Σ Σ υπολογίσιμη σε πολυωνυμικό χρόνο. Δοθέντος ενός x Σ, βρες αν υπάρχει y Σ, με y p( x ), έτσι ώστε (x, y) R. Αλλιώς, αν δεν υπάρχει τέτοιο y δηλ., επίστρεψε όχι. Ότι μια σχέση R είναι υπολογίσιμη σε πολυωνυμικό χρόνο σημαίνει ότι υπάρχει μια T.M, M R, η οποία δέχεται ως εισόδους τα x, y, και αποφαίνεται σε πολυωνυμικό χρόνο αν x, y R. Το μήκος της εισόδου είναι x + y, εξού και η απαίτηση το y να είναι πολυώνυμο του x, παραπάνω. Ένα πρόβλημα της TFNP, τώρα, ορίζεται ως εξής: Έστω μια σχέση R Σ Σ υπολογίσιμη σε πολυωνυμικό χρόνο η οποία όμως είναι πλήρης. Δηλ. ισχύει ότι x Σ y Σ, με y p( x ), έτσι ώστε (x, y) R. Δοθέντος ενός x, βρες ένα τέτοιο y, που σίγουρα υπάρχει. Λόγω, όμως, όπως αναφέραμε και στην εισαγωγή, του ότι δεν υπάρχει συντακτικός τρόπος να αναγνωρίζουμε αν έναν πρόβλημα ανήκει στην TFNP, η TFNP είναι μια σημασιολογική κλάση. Και είπαμε ότι οι σημασιολογικές κλάσεις στερούνται, κατά πάσα πιθανότητα, complete προβλημάτων. Προκύπτει έτσι η ανάγκη διαχωρισμού της TFNP στις διάφορες συντακτικές της υποκλάσεις, προκειμένου να αναζητήσουμε μέσα σε αυτές, ενδεχομένως, κάποια complete προβλήματα. Οι γνωστές συντακτικές υποκλάσεις της TFNP που έχουν βρεθεί μέχρι σήμερα είναι οι PPA, PPAD, PPADS, PPP και PLS [21]. Σε αυτό το κεφάλαιο θα ορίσουμε, αυστηρά, τις συντακτικές υποκλάσεις της TFNP. Θα παρουσιάσουμε τα γραφοθεωρητικά λήμματα στα οποία βασίζονται οι υποκλάσεις αυτές, και θα καταγράψουμε τυπικά τα προβλήματα που εκφράζουν τα παραπάνω λήμματα. 19

20 Θα δούμε ότι κάθε γραφοθεωρητικό λήμμα μπορεί να εκφραστεί από παραπάνω από ένα προβλήματα τα οποία είναι ισοδύναμα μεταξύ τους. Αυτό έχει ως αποτέλεσμα καθεμία από τις παραπάνω κλάσεις να μπορεί εν τέλει να εκφραστεί μέσω προβλημάτων τα οποία είναι ευκολότερα μεταχειρίσιμα, π.χ. περιλαμβάνουν γραφήματα με πολύ μικρότερους βαθμούς. Το προηγούμενο είναι κάτι που μας βοηθάει όταν θέλουμε να εντάξουμε, ή ακόμα καλύτερα να δείξουμε complete, σε μία από τις παραπάνω κλάσεις άλλα προβλήματα, μέσω απεικονιστικών αναγωγών. 2.2 PPA Το βασικό λήμμα της θεωρίας των γράφων στο οποίο βασίζεται η υποκλάση της TFNP, PPA (Polynomial Parity Argument), είναι το εξής: Λήμμα. Κάθε μη διευθυνόμενος γράφος έχει άρτιο πλήθος κόμβων περιττού βαθμού Από το λήμμα συνεπάγεται, προφανώς, ότι αν ένα γράφημα G έχει ένα κόμβο περιττού βαθμού, τότε θα πρέπει να έχει τουλάχιστον έναν ακόμα. Ονομάζουμε ODD το πρόβλημα που προκύπτει από το παραπάνω λήμμα. ODD: Δοθέντος ενός μη διευθυνόμενου γραφήματος G και ενός κόμβου περιττού βαθμού, βρες ένα δεύτερο κόμβο περιττού βαθμού. Ένα στιγμιότυπο του ODD φαίνεται στο παρακάτω σχήμα. odd. odd odd odd Σχήμα 2.1: Στιγμιότυπο του ODD Μια ειδική περίπτωση του παραπάνω λήμματος προκύπτει όταν φράσσουμε το μέγιστο βαθμό κάθε κόμβου στο γράφημα G. Π.χ. αν πάρουμε για κάθε κόμβο v, deg(v) 2, θα προκύψει ένα γράφημα σαν του Σχήματος 2.2. Παρατηρούμε ότι στο συγκεκριμένο γράφημα οι μόνοι περιττού βαθμού κόμβοι είναι τα φύλλα του G, με βαθμό: deg(leaf) = 1. Το πρόβλημα της εύρεσης ενός περιττού βαθμού κόμβου μετατρέπεται σε πρόβλημα εύρεσης ενός φύλλου. Ονομάζουμε το πρόβλημα αυτό LEAF. 20

21 leaf. leaf Σχήμα 2.2: Στιγμιότυπο του LEAF, degree(g) Ορισμός. Ένας κόμβος v ενός μη διευθυνόμενου γραφήματος G = (V, E) είναι φύλλο του G, αν και μόνο αν¹ deg(v) = 1 LEAF: Δοθέντος ενός μη διευθυνόμενου γραφήματος G και ενός φύλλου, βρες ένα δεύτερο φύλλο του G. Εκ πρώτης όψεως, το LEAF φαίνεται ευκολότερο πρόβλημα από το ODD, καθώς αποτελεί ειδική περίπτωσή του. Θα αποδείξουμε όμως στη συνέχεια ότι δεν είναι έτσι. Ισχύει ότι τα δύο αυτά προβλήματα είναι υπολογιστικά ισοδύναμα, και ότι το LEAF αρκεί από μόνο του για να εκφράσει τη δυσκολία της PPA. Μια δεύτερη διατύπωση του βασικού λήμματος, που αναφέραμε παραπάνω, είναι η εξής: Λήμμα. Κάθε μη διευθυνόμενος γράφος με περιττό συνολικό πλήθος κόμβων έχει περιττό πλήθος κόμβων άρτιου βαθμού. Εκ πρώτης όψεως το Λήμμα φαίνεται ως μια εξειδίκευση του Λήμματος στην περίπτωση που το συνολικό πλήθος των κόμβων του G είναι περιττό. Στην πραγματικότητα, όμως, τα δύο Λήμματα είναι ισοδύναμα, και αποδεικνύονται και τα δύο πολύ εύκολα με βάση τη σχέση του Euler για μη διευθυνόμενα γραφήματα Σ v V deg(v) = 2 E, όπου E το πλήθος των ακμών του G. Το πρόβλημα, τώρα, που πηγάζει από το Λήμμα είναι το πρόβλημα EVEN. EVEN: Δοθέντος ενός μη διευθυνόμενου γραφήματος G με περιττό πλήθος κόμβων, βρες έναν κόμβο με άρτιο βαθμό. Ένα στιγμιότυπο του EVEN φαίνεται στο Σχήμα 2.3. Όπως και στην περίπτωση του ODD, μπορούμε και εδώ να θεωρήσουμε μια εξειδίκευση του EVEN για γραφήματα που φράσσονται αυτή τη φορά με βαθμό: deg(g) 1. Ονομάζουμε το πρόβλημα μας LONELY αυτή τη φορά και αυτό ορίζεται ως εξής. ¹στο εξής ανν 21

22 even. even even Σχήμα 2.3: Στιγμιότυπο του EVEN LONELY: Δοθέντος ενός μη διευθυνόμενου γραφήματος G = (V, E), με περιττό πλήθος κόμβων και deg(v) 1, v V, βρες έναν κόμβο που δε ζευγαρώνει με κανέναν άλλο.. lonely Σχήμα 2.4: Στιγμιότυπο του LONELY, degree(g) 1 Αναγωγές Ορισμός. Λέμε ότι ένα πρόβλημα A TFNP, ανάγεται απεικονιστικά σε πολυωνυμικό χρόνο σε ένα πρόβλημα Β ΤFNP, και γράφουμε Α m Β, αν f, g πολυωνυμικά υπολογίσιμες συναρτήσεις τέτοιες ώστε: (x, g(y)) R A (f(x), y) R B Ουσιαστικά δηλ. A m B, όταν μπορούμε από κάθε στιγμιότυπο x του A να δημιουργήσουμε ένα στιγμιότυπο f(x) του B, και για κάθε λύση y του f(x) να πάρουμε μια λύση g(y) για το πρόβλημα Α. Πως μπορούμε να πάρουμε όμως μια λύση για το B χωρίς να το επιλύσουμε; Η σημασία της αναγωγής μεταξύ δύσκολων προβλημάτων είναι ακριβώς αυτή. Υποθέτουμε ότι αν βρεθεί με κάποιο μαγικό τρόπο μια λύση για το πρόβλημα B, τότε αυτομάτως θα μπορούμε εμείς να βρούμε μία λύση και για το A. Ο μαγικός τρόπος που μας δίνεται μια λύση για το B, διατυπώνεται πολλές φορές και με τη φράση. Δοθέντος ενός μάντη (oracle) για το B,.... Θα αποδείξουμε τώρα τις εξής αναγωγές για τα προβλήματα της PPA: (i) LEAF m LONELY (ii) ODD m LEAF (iii) EVEN m ODD Πριν προχωρήσουμε στην απόδειξη των αναγωγών πρέπει να ξεκαθαρίσουμε ποια είναι η είσοδος στο κάθε πρόβλημα μας. Πρέπει να γίνει κατανοητό ότι η είσοδος σε καθένα από τα 22

23 προβλήματα που διατυπώσαμε προηγουμένως είναι πάντοτε ένα κύκλωμα. Το κύκλωμα αυτό θα πρέπει να μπορεί να υπολογίζει για μια είσοδο x, την έξοδο y σε πολυωνυμικό χρόνο. Αν αναπτυχθεί εκθετικά για όλες τις εισόδους του x {0, 1} n, θα μας δίνει φυσικά το γράφο του προβλήματος. Για αυτό παρακάτω όπου αναφέρεται ο γράφος ως είσοδος εννοείται, φυσικά, το κύκλωμα που παριστά το γράφο, και όχι ολόκληρος ο γράφος. Το γράφουμε έτσι μόνο για μαθηματική και εννοιολογική ευκολία. (i) LEAF m LONELY Για είσοδο το γράφο G 1 του LEAF, θα κατασκευάσουμε το γράφο G 2 του LONELY ως εξής: Ο G 2 θα έχει όλους τους κόμβους v του G 1 συν ένα κόμβο v, v. Η τοποθέτηση των ακμών μεταξύ των κόμβων, τώρα, θα πρέπει να γίνει με τέτοιο τρόπο έτσι ώστε τα φύλλα του γράφου G 1 να αποτελούν ακριβώς τους απομονωμένους κόμβους του G 2. Η αναγωγή θα έχει ως εξής: α) Αν ο v είναι απομονωμένος κόμβος του G 1, τότε στο G 2 βάζουμε ακμή v v β) Αν ο v έχει στο G 1 ακριβώς ένα γείτονα τον u, και ο u έχει κι αυτός μοναδικό γείτονα τον v, τότε στο G 2 βάζουμε ακμή v u. γ) Αν ο v έχει μοναδικό γείτονα τον u στο G 1, και ο u έχει 2 γείτονες, τότε διακρίνουμε περιπτώσεις: 1. Αν ο v προηγείται λεξικογραφικά του άλλου γείτονα του u, τότε βάζουμε ακμή v u. 2. Αλλιώς, βάζουμε ακμή v u. (δ) Αν ο v έχει 2 γείτονες, u, w, στο G 1, και ο u προηγείται λεξικογραφικά του w τότε διακρίνουμε τις περιπτώσεις: 1. Αν ο u έχει 2 γείτονες και ο v είναι ο πρώτος λεξικογραφικά γείτονας του, τότε βάζουμε v u. 2. Αλλιώς, βάζουμε v u. Αντιστοίχως: 3. Αν ο w έχει 2 γείτονες και ο v είναι ο πρώτος λεξικογραφικά γείτονας του, τότε βάζουμε v w. 4. Αλλιώς, βάζουμε v w. Η απεικονιστική αναγωγή που περιγράψαμε φαίνεται στην εικόνα 2.5. Οι κόμβοι με γκρι χρώμα και οι διακεκομμένες γραμμές αποτελούν το G 1, και όλοι οι κόμβοι (μπλε και γκρι) και οι έντονες γραμμές το G 2. Για την ορθότητα της αναγωγής καταρχάς παρατηρούμε οι (α)-(δ) είναι όλες οι περιπτώσεις για δύο κόμβους v, u σε ένα στιγμιότυπο του LEAF. Το LEAF δέχεται είσοδο το γράφο 23

24 leaf leaf leaf leaf u w 101 v 111 u w 111 v 110 Σχήμα 2.5: LEAF m LONELY G 1 (μέσω ενός κυκλώματος) και το φύλλο 000. Αφού το 000 είναι φύλλο στο G 1, θα γίνει απομονωμένος κόμβος στο G 2, μέσω της αναγωγής. Άρα ένας μάντης για το LONELY θα μας επιστρέψει τουλάχιστον έναν ακόμα απομονωμένο κόμβο του G 2, ή έναν περιττό αριθμό, ακόμα, από αυτούς. Παρατηρούμε ότι από τις περιπτώσεις (α) και (δ) αποκλείεται να προκύψει απομονωμένος κόμβος. Οι μόνες περιπτώσεις που μπορούν να μας δώσουν απομονωμένους κόμβους στο G 2 είναι οι (β) και η (γ). Άρα ένας απομονωμένους κόμβος στο G 2 είναι σίγουρα ένα φύλλο του G 1. (ii) ODD m LEAF Η αναγωγή αυτή είναι, πιθανόν, η πιο πολύπλοκη από τις τρεις, αλλά και η πιο σημαντική, καθώς είναι αυτή που μας λέει ότι η εύρεση ενός περιττού κόμβου σε έναν οσοδήποτε μεγάλο γράφο είναι εξίσου δύσκολη με την εύρεση ενός ίδιου κόμβου σε ένα φραγμένου βαθμού γράφο. Η αναγωγή είναι η παρακάτω: Αν G 1 = (V 1, E 1 ) το γράφημα του ODD κατασκευάζουμε ένα G 2 = (V 2, E 2 ) γράφημα για το LEAF ως εξής: Καταρχάς για κάθε κόμβο v i V 1, με βαθμό κόμβου deg ( v i ) δημιουργούμε deg(v i )/2 κόμβους στο G 2, τους οποίους ονομάζουμε v i,j, για j = {1,..., deg(v i )/2 }. Στο παρακάτω σχήμα φαίνεται πως δημιουργούνται οι κόμβοι του G 2 από κάθε κόμβο του G 1. Οι ακμές του G 2 προκύπτουν από ένα, σχετικά, σύνθετο κανόνα. Θεωρούμε κάθε κόμβο v i,j του G 2 να ορίζει ένα αντίστοιχο σύνολο, ας το ονομάσουμε V i,j. Λέμε ότι μια κορυφή v k του G 1 ανήκει στο σύνολο V i,j, ανν ο v k είναι στο G 1 ο, κατά αλφαριθμητική σειρά, (2j 1)- οστός, ή 2j-οστός γείτονας του v i. 24

25 v 5 v 5,2 v 5,1 v 2 v 6. v 2,1 v 6,3 v 3 v 6,1 v 6,2 v 3,1 v 3,2 v 1 v 4 v 1,1 v 4,1 Σχήμα 2.6: ODD m LEAF Π.χ. στο παραπάνω παράδειγμα, αν θεωρήσουμε ότι η σειρά των κόμβων v 1,..., v 6 είναι αλφαριθμητική, έχουμε: V 1,1 = {v 3, v 6 }, V 2,1 = {v 5, v 6 }, V 3,1 = {v 1, v 4 }, V 3,2 = {v 5, v 6 }, V 4,1 = {v 3, v 6 }, V 5,1 = {v 2, v 3 }, V 5,2 = {v 6 }, V 6,1 = {v 1, v 2 }, V 6,2 = {v 3, v 4 }, V 6,3 = {v 5 }. Ουσιαστικά, αυτό που γίνεται είναι ότι για κάθε έναν κόμβο του G 1 δημιουργούμε όσους κόμβους χρειάζονται στο G 2 έτσι ώστε κάθε νέος κόμβος να έχει βαθμό το πολύ 2 στο νέο γράφημα. Όσον αφορά τη σύνδεση, τώρα, δύο κόμβων στο G 2 έχουμε: Ένας κόμβος v i,j ενώνεται με τον κόμβο v κ,λ στο G 2, ανν v κ V i,j και v i V κ,λ. Π.χ. στο παραπάνω στιγμιότυπο υπάρχει ακμή στο G 2 μεταξύ v 6,2 και v 3,2 γιατί v 6 V 3,2 και v 3 V 6,2. Εξ ορισμού των συνόλων V i,j, λοιπόν, κάθε κόμβος v i,j θα είναι συνδεδεμένος με 1 ή με 2 άλλους κόμβους του γραφήματος. Η μόνη περίπτωση να είναι με 1 μόνο κόμβο συνδεδεμένος είναι όταν το V i,j είναι το τελευταίο σύνολο του v i και το v i είναι κόμβος περιττού βαθμού. Έτσι ένας κόμβος v i του G 1 είναι περιττού βαθμού, αν και μόνον αν ο κόμβος u i,m, όπου m = deg(v i )/2, του G 2 είναι φύλλο. Στο Σχήμα 2.6 δοθέντος ενός κόμβου περιττού βαθμού, π.χ. του v 5, η εύρεση ενός δεύτερου ίδιου κόμβου, του v 6, ανάγεται στο πρόβλημα της εύρεσης του φύλλου v 6,3, δοθέντος του φύλλου v 5,2. (iii) EVEN m ODD Για κάθε είσοδο του EVEN και γράφημα G 1 με τον κόμβο 000 να είναι άρτιου βαθμού, δημιουργούμε ένα γράφημα G 2 του ODD ως εξής: Προσθέτουμε στο G 1,αν δεν υπάρχει ήδη, κάθε ακμή της μορφής (v, u), όπου v, u είναι κόμβοι που έχουν όλα τα δυαδικά ψηφία τους ίδια εκτός από το τελευταίο. Κάθε ακμή αυτής της μορφής που υπάρχει στο G 1 τη διαγράφουμε. Με αυτό τον τρόπο καταφέρνουμε να μετατρέψουμε όλους τους κόμβους άρτιου βαθμού σε περιττού και το αντίστροφο. 25

26 Η ορθότητα της αναγωγής βασίζεται στο ότι παίρνουμε τους κόμβους ανά ζεύγη και έτσι ο βαθμός ενός κόμβου ή θα αυξηθεί, ή θα μειωθεί κατά ένα. Αποκλείεται, όμως, να κάνει και τα δύο. Επίσης ο κόμβος 000 που είναι άρτιος στο G 1, στο G 2 θα είναι περιττός. Άρα στο G 2 θα υπάρχει, τουλάχιστον, ένας ακόμα περιττός κόμβος τον οποίο θα μας επιστρέψει ένας μάντης του ODD. Οι λύσεις που θα επιστρέψει το ODD, λοιπόν, στο G 2 θα είναι ακριβώς οι λύσεις του EVEN στο G 1. Μια γραφική απεικόνιση της αναγωγής φαίνεται στο παρακάτω Σχήμα. Αναπαριστώνται με διακεκομμένες γραμμές οι συνδέσεις των κόμβων στο G 1 και με έντονες και διακεκομμένες οι συνδέσεις στο G 2. Οι άρτιοι κόμβοι του αρχικού G 1 που γίνονται περιττοί στο G 2 είναι οι κίτρινοι, ενώ οι περιττοί του G 1 που γίνονται άρτιοι στο G 2 είναι οι γκρι Σχήμα 2.7: EVEN m ODD Με βάση τις τρεις παραπάνω αναγωγές καθώς και τις άμεσες αναγωγές LEAF m ODD και LONELY m EVEN, καθότι τα LEAF και LONELY αποτελούν ειδικές περιπτώσεις των ODD και EVEN αντίστοιχα, αποδείξαμε ότι και τα τέσσερα προβλήματα είναι ισοδύναμα μεταξύ τους και εκφράζουν όλα τη δυσκολία της κλάσης PPA. Μπορούμε, λοιπόν, εν τέλει να περιγράψουμε την PPA ως την κλάση των προβλημάτων που ανάγονται στο πρόβλημα LONELY. Βάσει της ορθής και αυστηρής περιγραφής μέσω ενός δυαδικού κυκλώματος C το LONELY μπορεί να περιγραφεί ως εξής: LONELY: Δοθέντος ενός δυαδικού κυκλώματος C που υπολογίζει μια συνάρτηση C : {0, 1} n {0, 1} n τέτοια ώστε C(0 n ) = 0 n, επίστρεψε (i) x {0, 1} n \0 n τέτοιο ώστε C(x) = x ή (ii) x {0, 1} n τέτοια ώστε C(x) = y, αλλά C(y) x. Αν θέλουμε να ερμηνεύσουμε το παραπάνω σαν γράφο, όπως το περιγράψαμε προηγουμένως, σκεφτόμαστε ως εξής: Υπάρχει ακμή που συνδέει τους κόμβους x, y {0, 1} n μεταξύ 26

27 τους, ανν C(x) = y και C(y) = x. Έτσι οι περιπτώσεις (i) και (ii) επιστρέφουν τους κόμβους που δε ζευγαρώνουν με κανέναν άλλο. Να σημειώσουμε ότι οι περισσότερες από τις αναγωγές που παρουσιάσαμε, και θα παρουσιάσουμε στο Κεφάλαιο αυτό, βρίσκονται, ίσως σε μια όχι τόσο αναλυτική μορφή, στο σημαντικό paper [3] των P. Beame, S. Cook, R. Impagliazzo κ.α PPAD-PPADS Το γραφοθεωρητικό λήμμα των PPAD-PPADS (Polynomial Parity Argument on Directed Graphs) είναι κοινό και είναι το εξής: Λήμμα. Σε κάθε διευθυνόμενο γράφο με ένα μη ισορροπημένο κόμβο θα υπάρχει τουλάχιστον ένας ακόμα μη ισορροπημένος κόμβος Ορισμός. Ένας κόμβος v V ενός διευθυνόμενου γραφήματος G = (V, E) είναι μη ισορροπημένος, ανν Σdeg in (v) Σdeg out (v) Αρχικά παρατηρούμε ότι το λήμμα αυτό δεν είναι τίποτα άλλο παρά το λήμμα της PPA σε διευθυνόμενα γραφήματα. Αξίζει εδώ να σημειώσουμε, όμως, ότι το Λήμμα δε συνεπάγεται ότι ο συνολικός αριθμός των μη ισορροπημένων κόμβων στο γράφημα μας θα είναι άρτιος, όπως συμβαίνει με το αντίστοιχο Λήμμα για μη διευθυνόμενα γραφήματα PPAD Το πρόβλημα που προκύπτει από το παραπάνω λήμμα, και ορίζει την PPAD, είναι φυσικά το να βρούμε έναν μη ισορροπημένο κόμβο v. Το ονομάζουμε IMBALANCE. IMBALANCE: Δοθέντος ενός διευθυνόμενου γραφήματος G, και ενός v V, τέτοιου ώστε Σdeg in (v) < Σdeg out (v), να βρεις u v V με Σdeg in (v) Σdeg out (v), imb/d. imb/d imb/d Σχήμα 2.8: Στιγμιότυπο του IMBALANCE Όπως και στην περίπτωση της PPA μπορούμε να ανάγουμε το IMBALANCE σε ένα πρόβλημα με φραγμένο βαθμό για τους κόμβους του G. Έτσι αν απαιτήσουμε deg in,out (v) 27

28 1, v, προκύπτει το παρακάτω ισοδύναμο με το IMBALANCE, όπως θα δείξουμε στη συνέχεια, πρόβλημα. SOURCE OR SINK: Δοθέντος ενός διευθυνόμενου γραφήματος G, και ενός κόμβου-πηγή, βρες έναν κόμβο-καταβόθρα, ή ένα δεύτερο κόμβο-πηγή. source. source sink sink Σχήμα 2.9: Στιγμιότυπο του SOURCE OR SINK, degree in,out (G) Ορισμός. Ένας κόμβος v ενός διευθυνόμενου γραφήματος G = (V, E) λέγεται κόμβοςπηγή, εάν deg in (v) = 0 και deg out (v) 1, και κόμβος-καταβόθρα, εάν deg out (v) = 0 και deg in (v) 1 Φυσικά ισχύει SOURCE OR SINK m IMBALANCE, αφού αποτελεί ειδική περίπτωσή του. Θα δείξουμε όμως ότι ισχύει και η αντίστροφη αναγωγή. Δηλ. και IMBALANCE m SOURCE OR SINK. Αναγωγές IMBALANCE m SOURCE OR SINK Η αναγωγή από το IMBALANCE στο SOURCE OR SINK έχει ακριβώς την ίδια λογική βάση με την αναγωγή από το ODD στο LEAF. Δηλ. για κάθε κόμβο v i του G 1 του IMBALANCE θα δημιουργήσουμε όσους κόμβους v i,j απαιτούνται στο G 2 του SOURCE OR SINK προκειμένου κάθε κόμβος του SOURCE OR SINK να έχει βαθμό εισόδου 1 και βαθμό εξόδου 1. Θα διευκολυνθούμε πάλι στην κατανόηση αν θεωρήσουμε τον καθένα από τους νέους κόμβους v i,j να ορίζει ένα σύνολο V i,j. Επειδή, όμως, τώρα είναι απαραίτητη η διάκριση μεταξύ ακμών εισόδου και εξόδου, θα ορίσουμε το σύνολο V i,j ως εξής: Μια κορυφή v k του G 1 ανήκει στο σύνολο V i,j, ανν ο v k είναι ο, κατά αλφαριθμητική σειρά, j-οστός πρόγονος του v i, ή j-οστός απόγονος του v i. 28

29 Π.χ. στο G 1 του Σχήματος 2.10 έχουμε: V 1,1 = {v 3, v 2 }, V 2,1 = {v 1, v 3 }, V 2,2 = {v 5, v 4 }, V 3,1 = {v 2, v 1 }, V 3,2 = {v 4, }, V 4,1 = {v 2, v 3 }, V 5,1 = {, v 2 }, V 6,1 = {, v 7 }, V 6,2 = {, v 8 }, V 7,1 = {v 6, v 8 }, V 8,1 = {v 6, }, V 8,2 = {v 7, }. Ο αριθμός των κόμβων που θα αντικαταστήσουν το v i στο G 2 θα είναι max{deg in (v i ), deg out (v i )}. Οι συνδέσεις, τώρα των κόμβων στο G 2 θα γίνουν ως εξής: Μια κορυφή v i,j συνδέεται με μια άλλη v κ,λ, ανν v κ V i,j και v i V κ,λ. v 5 v 2 v 3 v 5,1 v 2,2 v 2,1 v 3,1 v 3,2 v 1.. v 4 v 1,1 v 4,1 v 6 v 7 v 6,1 v 7,1 v 6,2 v 8 v 8,2 v 8,1 Σχήμα 2.10: IMBALANCE m SOURCE OR SINK Π.χ. στο παραπάνω παράδειγμα υπάρχει ακμή από τον κόμβο v 4,1 στον v 3,2 επειδή στο G 1 ο v 4 έχει πρώτο, αλφαριθμητικά, απόγονο το v 3, αλλά για τον v 3 ο v 4 είναι ο δεύτερος στη σειρά πρόγονος του, μετά τον v 2. Για την ορθότητα της αναγωγής, τώρα, έχουμε: Αν στην είσοδο του IMBALANCE μας δίνεται ένας μη-ισορροπημένος κόμβος με Σdeg in < Σdeg out, έστω ο v 5, τότε με την αναγωγή ο κόμβος αυτός θα μετατραπεί σίγουρα σε τουλάχιστον έναν κόμβο-πηγή. Αυτό γιατί αν V 5,m, όπου m = max{deg in (v i ), deg out (v i )}, το τελευταίο σύνολο του v 5, τότε σίγουρα αυτό το σύνολο δε θα περιέχει πρόγονο, λόγω του ότι οι απόγονοι του v 5 υπερτερούν αριθμητικά των προγόνων. Αφού στο G 2 θα υπάρχει μια πηγή θα υπάρχει σίγουρα και ένας κόμβος-καταβόθρα. Αυτόν ή ένα δεύτερο κόμβο-πηγή, θα μας επιστρέψει ο μάντης του SOURCE OR SINK. Από τη σκοπιά των συνόλων V i,j που ορίσαμε, αυτό που θα μας επιστρέψει ο μάντης θα είναι ένας κόμβοςσύνολο v i,j που περιέχει μόνο απόγονο ή μόνο πρόγονο. Σε αυτή την περίπτωση, με τον τρόπο που ορίστηκαν τα σύνολα βλέπουμε ότι ο v i κόμβος έχει ανισορροπία προγόνων-απογόνων στο G 1, είναι δηλ. ένας μη-ισορροπημένος κόμβος, και συνεπώς λύση του IMBALANCE. Η διαφορά σε σχέση με την αντίστοιχη αναγωγή ODD m LEAF για μη διευθυνόμενα γραφήματα είναι ότι εδώ δεν είναι ανάγκη ο κόμβος πηγή ή καταβόθρα που θα επιστρέψει ο μάντης να αντιστοιχεί στο τελευταίο σύνολο V i,m του v i. Μπορεί να είναι και ένας από τους 29

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης

Πολυπλοκότητα. Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης. Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης. Προσπάθεια υλοποίησης Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι πόροι, π.χ. μνήμη, εύρος ζώνης Προσπάθεια υλοποίησης Παράμετροι της αποδοτικότητας ενός αλγόριθμου: Χρόνος εκτέλεσης Απαιτούμενοι

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές

Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Θεωρία Υπολογισμού και Πολυπλοκότητα Αναγωγές Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ανεπίλυτα Προβλήματα από τη Θεωρία Γλωσσών (5.1) To Πρόβλημα της Περάτωσης Το Πρόβλημα της Κενότητα

Διαβάστε περισσότερα

Κλάσεις Πολυπλοκότητας

Κλάσεις Πολυπλοκότητας Κλάσεις Πολυπλοκότητας Παύλος Εφραιμίδης pefraimi ee.duth.gr Κλάσεις Πολυπλοκότητας 1 Οι κλάσεις πολυπλοκότητας P και NP P: Polynomial ΗκλάσηP περιλαμβάνει όλα τα υπολογιστικά προβλήματα που μπορούν

Διαβάστε περισσότερα

ILP-Feasibility conp

ILP-Feasibility conp Διάλεξη 19: 23.12.2014 Θεωρία Γραμμικού Προγραμματισμού Γραφέας: Χαρίλαος Τζόβας Διδάσκων: Σταύρος Κολλιόπουλος 19.1 Θεωρία Πολυπλοκότητας και προβλήματα απόφασης Για να μιλήσουμε για προβλήματα και τον

Διαβάστε περισσότερα

Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Στα μαθηματικά και στις άλλες επιστήμες κάνουμε συχνά υποθέσεις. Οταν δείξουμε ότι μια υπόθεση είναι αλη

Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Στα μαθηματικά και στις άλλες επιστήμες κάνουμε συχνά υποθέσεις. Οταν δείξουμε ότι μια υπόθεση είναι αλη Υποθέσεις - - Θεωρήματα Μαθηματικά Πληροφορικής 1ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Στα μαθηματικά και στις άλλες επιστήμες

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { R η R είναι μια κανονική έκφραση η οποία παράγει μια μη πεπερασμένη γλώσσα} (β) { G η G είναι μια CFG η οποία

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) ({ G η G είναι μια ασυμφραστική γραμματική που δεν παράγει καμιά λέξη με μήκος μικρότερο του 2 } (β) { Μ,w

Διαβάστε περισσότερα

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1, Κεφάλαιο 8 NP και Υπολογιστική Δυσεπιλυσιμότητα Παύλος Εφραιμίδης V1.1, 2015-01-19 Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 πρόβλημα αναζήτησης (search problem) Ένα πρόβλημα

Διαβάστε περισσότερα

conp and Function Problems

conp and Function Problems conp and Function Problems 1 Ένα πρόβλημα απόφασης λέμε ότι επιλύεται σε μηντετερμινιστικό πολυωνυμικό χρόνο αν υπάρχει ένας μηντετερμινιστικός αλγόριθμος που, εκμεταλλευόμενος μια τυχαία επιλογή, μπορεί

Διαβάστε περισσότερα

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα Αλγόριθμοι πολυωνυμικού χρόνου Ένας αλγόριθμος πολυωνυμικού χρόνου έχει χρόνο εκτέλεσης όπου είναι μία (θετική) σταθερά Κλάση πολυπλοκότητας : περιλαμβάνει τα προβλήματα που επιδέχονται λύση σε πολυωνυμικό

Διαβάστε περισσότερα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων Τι θα κάνουμε σήμερα Εισαγωγή Πολυταινιακές Μηχανές Turing (3.2.1) Μη Ντετερμινιστικές Μηχανές

Διαβάστε περισσότερα

Κλάση NP, NP-Complete Προβλήματα

Κλάση NP, NP-Complete Προβλήματα Κλάση NP, NP-Complete Προβλήματα Βαγγέλης ούρος douros@aueb.gr 1 11/6/2012 Αλγόριθμοι, Εαρινό Εξάμηνο 2012, Φροντιστήριο #14 Προβλήματα Απόφασης & Βελτιστοποίησης 2 Πρόβλημα Απόφασης: Κάθε πρόβλημα που

Διαβάστε περισσότερα

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος Περιγραφή μαθήματος Θεωρία Υπολογισμού Άρτιοι ΑΜ Σκοπός του μαθήματος είναι η εισαγωγή στη Θεωρία Υπολογισμού και στη Θεωρία Υπολογιστικής Πολυπλοκότητας (Θεωρία Αλγορίθμων). Διδάσκων: Σταύρος Κολλιόπουλος

Διαβάστε περισσότερα

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr Θεωρία Υπολογισμού Άρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr Περιγραφή μαθήματος Σκοπός του μαθήματος είναι η εισαγωγή στη Θεωρία Υπολογισμού και στη Θεωρία Υπολογιστικής Πολυπλοκότητας

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { G,k η G είναι μια ασυμφραστική γραμματική η οποία παράγει κάποια λέξη 1 n όπου n k } (β) { Μ,k η Μ είναι

Διαβάστε περισσότερα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 16: Αναγωγές

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 16: Αναγωγές ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 16: Αναγωγές Τι θα κάνουμε σήμερα Το Πρόβλημα του Τερματισμού (4.2) Εισαγωγή στις Αναγωγές Ανεπίλυτα Προβλήματα από την Θεωρία των Γλωσσών (5.1) Απεικονιστικές

Διαβάστε περισσότερα

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 8 NP και Υπολογιστική Δυσεπιλυσιμότητα Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 πρόβλημα αναζήτησης (search problem) Ένα πρόβλημα αναζήτησης είναι ένα πρόβλημα στο

Διαβάστε περισσότερα

Chapter 7, 8 : Completeness

Chapter 7, 8 : Completeness CSC 314: Switching Theory Chapter 7, 8 : Completeness 19 December 2008 1 1 Αναγωγές Πολυωνυμικού Χρόνου Ορισμός. f: Σ * Σ * ονομάζεται υπολογίσιμη σε πολυνωνυμικό χρόνο αν υπάρχει μια πολυωνυμικά φραγμένη

Διαβάστε περισσότερα

Λύσεις 4ης Σειράς Ασκήσεων

Λύσεις 4ης Σειράς Ασκήσεων Λύσεις 4ης Σειράς Ασκήσεων Άσκηση 1 Αναγάγουμε τν Κ 0 που γνωρίζουμε ότι είναι μη-αναδρομική (μη-επιλύσιμη) στην γλώσσα: L = {p() η μηχανή Turing Μ τερματίζει με είσοδο κενή ταινία;} Δοσμένης της περιγραφής

Διαβάστε περισσότερα

Υποθέσεις - Θεωρήματα. Μαθηματικά Πληροφορικής 1ο Μάθημα. Η χρυσή τομή. Υποθέσεις - Εικασίες

Υποθέσεις - Θεωρήματα. Μαθηματικά Πληροφορικής 1ο Μάθημα. Η χρυσή τομή. Υποθέσεις - Εικασίες Υποθέσεις - - Θεωρήματα Υποθέσεις - - Θεωρήματα Υποθέσεις - Θεωρήματα Μαθηματικά Πληροορικής ο Μάθημα Στα μαθηματικά και στις άλλες επιστήμες κάνουμε συχνά υποθέσεις. Οταν δείξουμε ότι μια υπόθεση είναι

Διαβάστε περισσότερα

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ

Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης. Οταν το πρόβλημα έχει πεπερασμ Μαθηματικά Πληροφορικής 4ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Μορφές αποδείξεων Υπάρχουν πολλά είδη αποδείξεων. Εδώ θα δούμε τα πιο κοινά: Εξαντλητική μέθοδος ή μέθοδος επισκόπησης.

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα 15 Ιουνίου 2009 1 / 26 Εισαγωγή Η ϑεωρία

Διαβάστε περισσότερα

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π

Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός συγκρίσεων π Περιορισμοί Αλγοριθμικής Ισχύος Κατηγοριοποίηση πολυπλοκοτήτων Κατώτερα φράγματα Κατώτερο φράγμα: εκτίμηση της ελάχιστης εργασίας που απαιτείται για την επίλυση ενός προβλήματος. Παραδείγματα: Αριθμός

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { G 1, G 2 οι G 1 και G 2 είναι δύο CFG που παράγουν μια κοινή λέξη μήκους 144 } (β) { D,k το D είναι ένα DFA

Διαβάστε περισσότερα

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο

Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Κεφάλαιο 5. Το Συμπτωτικό Πολυώνυμο Σύνοψη Στο κεφάλαιο αυτό παρουσιάζεται η ιδέα του συμπτωτικού πολυωνύμου, του πολυωνύμου, δηλαδή, που είναι του μικρότερου δυνατού βαθμού και που, για συγκεκριμένες,

Διαβάστε περισσότερα

CSC 314: Switching Theory

CSC 314: Switching Theory CSC 314: Switching Theory Course Summary 9 th January 2009 1 1 Θέματα Μαθήματος Ερωτήσεις Τι είναι αλγόριθμος? Τι μπορεί να υπολογιστεί? Απαντήσεις Μοντέλα Υπολογισμού Δυνατότητες και μη-δυνατότητες 2

Διαβάστε περισσότερα

Υπολογιστική Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα Υπολογιστική Πολυπλοκότητα ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Υπολογιστική Πολυπλοκότητα Γιατί κάποια (επιλύσιμα) προβλήματα είναι δύσκολο

Διαβάστε περισσότερα

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5 Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5 Στη σελίδα αυτή γράψτε μόνο τα στοιχεία σας. Γράψτε τις απαντήσεις σας στις επόμενες σελίδες, κάτω από τις αντίστοιχες ερωτήσεις. Στις απαντήσεις

Διαβάστε περισσότερα

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem)

Το πρόβλημα μονοδρόμησης (The One-Way Street Problem) Το πρόβλημα μονοδρόμησης (The One-Way Street Problem) Το πρόβλημα Σχετίζεται με τη διαχείριση της κίνησης οχημάτων στους δρόμους Αν δεν υπήρχαν καθυστερήσεις στην κίνηση στις πόλεις Αποφυγή σπατάλης ενέργειας

Διαβάστε περισσότερα

Αλγόριθμοι για αυτόματα

Αλγόριθμοι για αυτόματα Κεφάλαιο 8 Αλγόριθμοι για αυτόματα Κύρια βιβλιογραφική αναφορά για αυτό το Κεφάλαιο είναι η Hopcroft, Motwani, and Ullman 2007. 8.1 Πότε ένα DFA αναγνωρίζει κενή ή άπειρη γλώσσα Δοθέντος ενός DFA M καλούμαστε

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής

Θεωρία Παιγνίων και Αποφάσεων. Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος. Ε. Μαρκάκης. Επικ. Καθηγητής Θεωρία Παιγνίων και Αποφάσεων Ενότητα 5: Εύρεση σημείων ισορροπίας σε παίγνια μηδενικού αθροίσματος Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Παίγνια μηδενικού αθροίσματος PessimisIc play Αμιγείς max-min και

Διαβάστε περισσότερα

* * * ( ) mod p = (a p 1. 2 ) mod p.

* * * ( ) mod p = (a p 1. 2 ) mod p. Θεωρια Αριθμων Εαρινο Εξαμηνο 2016 17 Μέρος Α: Πρώτοι Αριθμοί Διάλεξη 1 Ενότητα 1. Διαιρετότητα: Διαιρετότητα, διαιρέτες, πολλαπλάσια, στοιχειώδεις ιδιότητες. Γραμμικοί Συνδυασμοί (ΓΣ). Ενότητα 2. Πρώτοι

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 3ο μέρος σημειώσεων: Μέθοδος της Επίλυσης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια

Διαβάστε περισσότερα

HY118-Διακριτά Μαθηματικά. Τι είδαμε την προηγούμενη φορά. Θεωρία γράφων / γραφήματα. 25 -Γράφοι. ΗΥ118, Διακριτά Μαθηματικά Άνοιξη 2017

HY118-Διακριτά Μαθηματικά. Τι είδαμε την προηγούμενη φορά. Θεωρία γράφων / γραφήματα. 25 -Γράφοι. ΗΥ118, Διακριτά Μαθηματικά Άνοιξη 2017 HY118-Διακριτά Μαθηματικά Τι είδαμε την προηγούμενη φορά Παρασκευή, 12/05/2017 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr Υπογράφημα Συμπληρωματικά γραφήματα Ισομορφισμός γράφων Υπολογιστική πολυπλοκότητα

Διαβάστε περισσότερα

Σχεδίαση και Ανάλυση Αλγορίθμων

Σχεδίαση και Ανάλυση Αλγορίθμων Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 4.0 Επιλογή Αλγόριθμοι Επιλογής Select και Quick-Select Σταύρος Δ. Νικολόπουλος 2016-17 Τμήμα Μηχανικών Η/Υ & Πληροφορικής Πανεπιστήμιο Ιωαννίνων Webpage: www.cs.uoi.gr/~stavros

Διαβάστε περισσότερα

Υπολογιστική Πολυπλοκότητα

Υπολογιστική Πολυπλοκότητα Υπολογιστική Πολυπλοκότητα ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Άδεια Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { Μ η Μ είναι μια ΤΜ η οποία διαγιγνώσκει το πρόβλημα ΙΣΟΔΥΝΑΜΙΑ ΤΜ (διαφάνεια 9 25)} (α) Γνωρίζουμε ότι το

Διαβάστε περισσότερα

4.3 Ορθότητα και Πληρότητα

4.3 Ορθότητα και Πληρότητα 4.3 Ορθότητα και Πληρότητα Συστήματα αποδείξεων όπως η μορφολογική παραγωγή και η κατασκευή μοντέλων χρησιμοποιούνται για να δείξουμε την εγκυρότητα εξαγωγών συμπερασμάτων. Ένα σύστημα αποδείξεων μπορεί

Διαβάστε περισσότερα

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι)

Κρυπτογραφία. Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτογραφία Κεφάλαιο 4 Αλγόριθμοι Δημοσίου Κλειδιού (ή ασύμμετροι αλγόριθμοι) Κρυπτοσυστήματα Δημοσίου κλειδιού Αποστολέας P Encryption C Decryption P Παραλήπτης Προτάθηκαν το 1976 Κάθε συμμετέχων στο

Διαβάστε περισσότερα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 1: Εισαγωγή- Χαρακτηριστικά Παραδείγματα Αλγορίθμων Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων

Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Ειδικά θέματα Αλγορίθμων και Δομών Δεδομένων (ΠΛΕ073) Απαντήσεις 1 ου Σετ Ασκήσεων Άσκηση 1 α) Η δομή σταθμισμένης ένωσης με συμπίεση διαδρομής μπορεί να τροποποιηθεί πολύ εύκολα ώστε να υποστηρίζει τις

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κλάσεις P, NP NP-πληρότητα 15 Απριλίου 2008 Δρ. Παπαδοπούλου Βίκη 1 Υπολογίσιμα και Εφικτά Υπολογίσιμα Προβλήματα Είδαμε ότι 1. Οτιδήποτε μπορούμε να περιγράψουμε με

Διαβάστε περισσότερα

Αριθμοθεωρητικοί Αλγόριθμοι

Αριθμοθεωρητικοί Αλγόριθμοι Αλγόριθμοι που επεξεργάζονται μεγάλους ακέραιους αριθμούς Μέγεθος εισόδου: Αριθμός bits που απαιτούνται για την αναπαράσταση των ακεραίων. Έστω ότι ένας αλγόριθμος λαμβάνει ως είσοδο έναν ακέραιο Ο αλγόριθμος

Διαβάστε περισσότερα

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,...

KΕΦΑΛΑΙΟ 1 ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ. { 1,2,3,..., n,... KΕΦΑΛΑΙΟ ΧΡΗΣΙΜΕΣ ΜΑΘΗΜΑΤΙΚΕΣ ΕΝΝΟΙΕΣ Βασικές έννοιες διαιρετότητας Θα συµβολίζουµε µε, τα σύνολα των φυσικών αριθµών και των ακεραίων αντιστοίχως: {,,3,,, } { 0,,,,, } = = ± ± ± Ορισµός Ένας φυσικός αριθµός

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Κεφάλαιο 8 NP και Υπολογιστική Δυσεπιλυσιµότητα Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. 1 πρόβληµα αναζήτησης (search problem) Ένα πρόβληµα αναζήτησης είναι ένα πρόβληµα στο

Διαβάστε περισσότερα

Φροντιστήριο 11 Λύσεις

Φροντιστήριο 11 Λύσεις Άσκηση 1 Φροντιστήριο 11 Λύσεις Να αποδείξετε ότι η κλάση Ρ είναι κλειστή ως προς τις πράξεις της ένωσης, της συναρμογής και του συμπληρώματος. Θα πρέπει να δείξουμε ότι: (α) Ένωση: Αν οι Λ 1 και Λ 2 είναι

Διαβάστε περισσότερα

ΜΑΘΗΜΑΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΑΠΟΔΕΙΞΗ

ΜΑΘΗΜΑΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΑΠΟΔΕΙΞΗ ΜΑΘΗΜΑΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΑΠΟΔΕΙΞΗ Περιεχόμενα : Α) Προτάσεις-Σύνθεση προτάσεων Β)Απόδειξη μιας πρότασης Α 1 ) Τι είναι πρόταση Β 1 ) Βασικές έννοιες Α ) Συνεπαγωγή Β ) Βασικές μέθοδοι απόδειξης Α 3 ) Ισοδυναμία

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

NP-πληρότητα. Λεωνίδας Παληός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων

NP-πληρότητα. Λεωνίδας Παληός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων NP-πληρότητα Λεωνίδας Παληός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων Πολυωνυμικός μετασχηματισμός Ένας πολυωνυμικός μετασχηματισμός από την L 1 Σ 1 * στην L 2 Σ 2 * είναι μια συνάρτηση

Διαβάστε περισσότερα

f(t) = (1 t)a + tb. f(n) =

f(t) = (1 t)a + tb. f(n) = Παράρτημα Αʹ Αριθμήσιμα και υπεραριθμήσιμα σύνολα Αʹ1 Ισοπληθικά σύνολα Ορισμός Αʹ11 (ισοπληθικότητα) Εστω A, B δύο μη κενά σύνολα Τα A, B λέγονται ισοπληθικά αν υπάρχει μια συνάρτηση f : A B, η οποία

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα

NP-complete problems. IS, 4-Degree IS,CLIQUE, NODE COVER, MAX CUT, MAX BISECTION, BISECTION WIDTH. NP-complete problems 1 / 30

NP-complete problems. IS, 4-Degree IS,CLIQUE, NODE COVER, MAX CUT, MAX BISECTION, BISECTION WIDTH. NP-complete problems 1 / 30 NP-complete problems IS, 4-Degree IS,CLIQUE, NODE COVER, MAX CUT, MAX BISECTION, BISECTION WIDTH Καλογερόπουλος Παναγιώτης (ΜΠΛΑ) NP-complete problems 1 / 30 Independent Set is NP-complete Ορισμός. Εστω

Διαβάστε περισσότερα

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι έχουμε δει μέχρι τώρα. Ισομορφισμός γράφων: Μία σχέση ισοδυναμίας μεταξύ γράφων.

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι έχουμε δει μέχρι τώρα. Ισομορφισμός γράφων: Μία σχέση ισοδυναμίας μεταξύ γράφων. HY118-Διακριτά Μαθηματικά Θεωρία γράφων/ γραφήματα Τρίτη, 15/05/2018 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 16-May-18 1 1 16-May-18 2 2 Τι έχουμε δει μέχρι τώρα Κατευθυνόμενοι μη κατευθυνόμενοι

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Πιο κάτω υπάρχει ένα σχεδιάγραμμα που τοποθετεί τις κλάσεις των κανονικών, ασυμφραστικών, διαγνώσιμων και αναγνωρίσιμων γλωσσών μέσα στο σύνολο όλων των γλωσσών. Ακολουθούν

Διαβάστε περισσότερα

Σειρά Προβλημάτων 5 Λύσεις

Σειρά Προβλημάτων 5 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 5 Λύσεις Να δείξετε ότι οι πιο κάτω γλώσσες είναι διαγνώσιμες. (α) { D το D είναι ένα DFA το οποίο αποδέχεται όλες τις λέξεις στο Σ * } (α) Για να διαγνώσουμε το πρόβλημα μπορούμε

Διαβάστε περισσότερα

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ

A. ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ 8Α ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ A ΣΥΝΕΧΕΙΑ ΣΥΝΑΡΤΗΣΗΣ Πότε μια συνάρτηση λέγεται συνεχής σε ένα σημείο του πεδίου ορισμού o της ; Απάντηση : ( ΟΜΟΓ, 6 ΟΜΟΓ, 9 Β, ΟΜΟΓ, 5 Έστω μια συνάρτηση και ένα σημείο του πεδίου

Διαβάστε περισσότερα

Μη Ντετερμινισμός και NP-Πληρότητα

Μη Ντετερμινισμός και NP-Πληρότητα Μη Ντετερμινισμός και NP-Πληρότητα Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Μη Ντετερμινιστικές Μηχανές Turing Μη ντετερμινιστική

Διαβάστε περισσότερα

1 Η εναλλάσσουσα ομάδα

1 Η εναλλάσσουσα ομάδα Η εναλλάσσουσα ομάδα Η εναλλάσσουσα ομάδα Όπως είδαμε η συνάρτηση g : S { } είναι ένας επιμορφισμός ομάδων. Ο πυρήνας Ke g {σ S / g σ } του επιμορφισμού συμβολίζεται με A περιέχει όλες τις άρτιες μεταθέσεις

Διαβάστε περισσότερα

Αριθμήσιμα σύνολα. Μαθηματικά Πληροφορικής 5ο Μάθημα. Παραδείγματα αριθμήσιμων συνόλων. Οι ρητοί αριθμοί

Αριθμήσιμα σύνολα. Μαθηματικά Πληροφορικής 5ο Μάθημα. Παραδείγματα αριθμήσιμων συνόλων. Οι ρητοί αριθμοί Αριθμήσιμα σύνολα Μαθηματικά Πληροφορικής 5ο Μάθημα Τμήμα Πληροφορικής και Τηλεπικοινωνιών Πανεπιστήμιο Αθηνών Ορισμός Πόσα στοιχεία έχει το σύνολο {a, b, r, q, x}; Οσα και το σύνολο {,,, 4, 5} που είναι

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 2:Στοιχεία Μαθηματικής Λογικής Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

Διαβάστε περισσότερα

Φροντιστήριο 10 Λύσεις

Φροντιστήριο 10 Λύσεις Άσκηση 1 Φροντιστήριο 10 Λύσεις Να κατασκευάσετε μια μηχανή Turing με δύο ταινίες η οποία να αποδέχεται στην πρώτη της ταινία μια οποιαδήποτε λέξη w {0,1} * και να γράφει τη λέξη w R στη δεύτερη της ταινία.

Διαβάστε περισσότερα

ΑΝΑΛΥΣΗ 1 ΤΕΤΑΡΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης.

ΑΝΑΛΥΣΗ 1 ΤΕΤΑΡΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης. ΑΝΑΛΥΣΗ 1 ΤΕΤΑΡΤΟ ΜΑΘΗΜΑ, 15-10-13 Μ. Παπαδημητράκης. 1 Παράδειγμα. Ως εφαρμογή της Αρχιμήδειας Ιδιότητας θα μελετήσουμε το σύνολο { 1 } A = n N = {1, 1 n 2, 1 } 3,.... Κατ αρχάς το σύνολο A έχει προφανώς

Διαβάστε περισσότερα

f(x) = και στην συνέχεια

f(x) = και στην συνέχεια ΕΡΩΤΗΣΕΙΣ ΜΑΘΗΤΩΝ Ερώτηση. Στις συναρτήσεις μπορούμε να μετασχηματίσουμε πρώτα τον τύπο τους και μετά να βρίσκουμε το πεδίο ορισμού τους; Όχι. Το πεδίο ορισμού της συνάρτησης το βρίσκουμε πριν μετασχηματίσουμε

Διαβάστε περισσότερα

ΑΝΑΛΥΣΗ 1 ΠΕΜΠΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης.

ΑΝΑΛΥΣΗ 1 ΠΕΜΠΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης. ΑΝΑΛΥΣΗ 1 ΠΕΜΠΤΟ ΜΑΘΗΜΑ, 17-10-13 Μ. Παπαδημητράκης. 1 Την προηγούμενη φορά αναφέραμε (και αποδείξαμε στην περίπτωση n = 2) το θεώρημα που λέει ότι, αν n N, n 2, τότε για κάθε y 0 υπάρχει μοναδική μηαρνητική

Διαβάστε περισσότερα

Μη Ντετερμινισμός και NP-Πληρότητα

Μη Ντετερμινισμός και NP-Πληρότητα Μη Ντετερμινισμός και NP-Πληρότητα Διδάσκοντες: Σ Ζάχος, Δ Φωτάκης Επιμέλεια διαφανειών: Δ Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Μη Ντετερμινιστικές

Διαβάστε περισσότερα

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr

I. ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ. math-gr I ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ i e ΜΕΡΟΣ Ι ΟΡΙΣΜΟΣ - ΒΑΣΙΚΕΣ ΠΡΑΞΕΙΣ Α Ορισμός Ο ορισμός του συνόλου των Μιγαδικών αριθμών (C) βασίζεται στις εξής παραδοχές: Υπάρχει ένας αριθμός i για τον οποίο ισχύει i Το σύνολο

Διαβάστε περισσότερα

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι είδαμε την προηγούμενη φορά. Συνεκτικότητα. 25 -Γράφοι

HY118-Διακριτά Μαθηματικά. Θεωρία γράφων/ γραφήματα. Τι είδαμε την προηγούμενη φορά. Συνεκτικότητα. 25 -Γράφοι HY118-Διακριτά Μαθηματικά Θεωρία γράφων/ γραφήματα Πέμπτη, 17/05/2018 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 17-May-18 1 1 17-May-18 2 2 Τι είδαμε την προηγούμενη φορά Ισομορφισμός γράφων Υπολογιστική

Διαβάστε περισσότερα

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX

ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX ΚΕΦΑΛΑΙΟ 3 ΕΝΑΣ ΔΙΚΡΙΤΗΡΙΟΣ ΑΛΓΟΡΙΘΜΟΣ SIMPLEX 3.1 Εισαγωγή Ο αλγόριθμος Simplex θεωρείται πλέον ως ένας κλασικός αλγόριθμος για την επίλυση γραμμικών προβλημάτων. Η πρακτική αποτελεσματικότητά του έχει

Διαβάστε περισσότερα

A N A B P Y T A ΑΣΚΗΣΕΙΣ ΠΟΛΥΩΝΥΜΩΝ. 1 (α + β + γ) [(α-β) 2 +(α-γ) 2 +(β-γ) 2 ] και τις υποθέσεις

A N A B P Y T A ΑΣΚΗΣΕΙΣ ΠΟΛΥΩΝΥΜΩΝ. 1 (α + β + γ) [(α-β) 2 +(α-γ) 2 +(β-γ) 2 ] και τις υποθέσεις ΑΣΚΗΣΕΙΣ ΠΟΛΥΩΝΥΜΩΝ ΑΣΚΗΣΗ η Αν α +β +γ = αβγ και α + β + γ, να δείξετε ότι το πολυώνυμο P()=(α β) +(β γ) + γ α είναι το μηδενικό πολυώνυμο. Από την ταυτότητα του Euler α +β +γ -αβγ = (α + β + γ)[(α-β)

Διαβάστε περισσότερα

L A P. w L A f(w) L B (10.1) u := f(w)

L A P. w L A f(w) L B (10.1) u := f(w) Κεφάλαιο 10 NP -πληρότητα Σύνοψη Οι γλώσσες στην κλάση πολυπλοκότητας P μπορούν να αποφασίζονται σε πολωνυμικό χρόνο. Οι επιστήμονες πιστεύουν, αν και δε μπορούν να το αποδείξουν ότι η P είναι ένα γνήσιο

Διαβάστε περισσότερα

Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές

Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές 0 Πολυωνυμικές εξισώσεις και ανισώσεις Εξισώσεις και ανισώσεις που ανάγονται σε πολυωνυμικές Α. ΑΠΑΡΑΙΤΗΤΕΣ ΓΝΩΣΕΙΣ ΘΕΩΡΙΑΣ Για να λύσουμε μια πολυωνυμική εξίσωση P(x) 0 (ή μια πολυωνυμική ανίσωση P(x)

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Διαγνωσιμότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Διαγνωσιμότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Διαγνωσιμότητα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Διαγνώσιμες Γλώσσες (4.1) Επιλύσιμα Προβλήματα σχετικά με Κανονικές Γλώσσες Επιλύσιμα Προβλήματα

Διαβάστε περισσότερα

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία

Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Σημειώσεις Διαλέξεων Στοιχεία Θεωρίας Αριθμών & Εφαρμογές στην Κρυπτογραφία Επιμέλεια σημειώσεων: Ζωή Παρασκευοπούλου Νίκος

Διαβάστε περισσότερα

Φροντιστήριο 9 Λύσεις

Φροντιστήριο 9 Λύσεις Άσκηση 1 Φροντιστήριο 9 Λύσεις Να κατασκευάσετε μια μηχανή Turing με δύο ταινίες η οποία να αποδέχεται στην πρώτη της ταινία μια οποιαδήποτε λέξη w {a,b} * και να γράφει τη λέξη w R στη δεύτερη της ταινία.

Διαβάστε περισσότερα

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π. Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων CO.RE.LAB. ΣΗΜΜΥ - Ε.Μ.Π. Άσκηση 1 η : Παιχνίδι επιλογής ακμών Έχουμε ένα ακυκλικό κατευθυνόμενο γράφο, μια αρχική κορυφή και δυο παίκτες. Οι παίκτες διαδοχικά

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών

ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών ΚΕΦΑΛΑΙΟ 12: Θεωρία υπολογισµών 1 Συναρτήσεις και ο υπολογισµός τους 2 Μηχανές Turing 3 Καθολικές γλώσσες προγραµµατισµού 4 Μια µη υπολογίσιµη συνάρτηση 5 Πολυπλοκότητα προβληµάτων 1 Συναρτήσεις Μία συνάρτηση

Διαβάστε περισσότερα

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο ΓΕΝΙΚΑ ΠΕΡΙ ΑΝΙΣΩΣΕΩΝ Έστω f σύνολο Α, g Α ΒΑΘΜΟΥ είναι δύο παραστάσεις μιας μεταβλητής πού παίρνει τιμές στο Ανίσωση με έναν άγνωστο λέγεται κάθε σχέση της μορφής f f g g ή, η οποία αληθεύει για ορισμένες

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων

K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Στοιχεία προτασιακής λογικής Περιεχόμενα

Διαβάστε περισσότερα

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ

Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ Μ Α Θ Η Μ Α Τ Α Γ Λ Υ Κ Ε Ι Ο Υ ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ ΘΕΤΙΚΩΝ ΣΠΟΥΔΩΝ ΚΑΙ ΣΠΟΥΔΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ (Α ΜΕΡΟΣ: ΣΥΝΑΡΤΗΣΕΙΣ) Επιμέλεια: Καραγιάννης Ιωάννης, Σχολικός Σύμβουλος Μαθηματικών

Διαβάστε περισσότερα

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας

Κρυπτογραφία. Έλεγχος πρώτων αριθών-παραγοντοποίηση. Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας Κρυπτογραφία Έλεγχος πρώτων αριθών-παραγοντοποίηση Διαφάνειες: Άρης Παγουρτζής Πέτρος Ποτίκας Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Σχολή ΗΜΜΥ ΕΜΠ Κρυπτογραφία

Διαβάστε περισσότερα

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014

ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 ΜΕΓΙΣΤΙΚΟΣ ΤΕΛΕΣΤΗΣ 18 Σεπτεμβρίου 2014 Περιεχόμενα 1 Εισαγωγή 2 2 Μεγιστικός τελέστης στην μπάλα 2 2.1 Βασικό θεώρημα........................ 2 2.2 Γενική περίπτωση μπάλας.................. 6 2.2.1 Στο

Διαβάστε περισσότερα

Θεωρία Γραφημάτων 6η Διάλεξη

Θεωρία Γραφημάτων 6η Διάλεξη Θεωρία Γραφημάτων 6η Διάλεξη Α. Συμβώνης Εθνικο Μετσοβειο Πολυτεχνειο Σχολη Εφαρμοσμενων Μαθηματικων και Φυσικων Επιστημων Τομεασ Μαθηματικων Φεβρουάριος 2016 Α. Συμβώνης (ΕΜΠ) Θεωρία Γραφημάτων 6η Διάλεξη

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

Διαβάστε περισσότερα

Τεχνικές Αποδείξεις Κάτω Φραγμάτων

Τεχνικές Αποδείξεις Κάτω Φραγμάτων Τεχνικές Αποδείξεις Κάτω Φραγμάτων Θέλουμε να δείξουμε κυκλωματικά κάτω φράγματα για ομοιόμορφες κλάσεις επειδή: Δίνουν μεγάλη πληροφορία για τις κλάσεις αυτές: π.χ. αν EXP P /poly σημαίνει Ότι παρότι

Διαβάστε περισσότερα

Μαθηματικά: Αριθμητική και Άλγεβρα. Μάθημα 3 ο, Τμήμα Α. Τρόποι απόδειξης

Μαθηματικά: Αριθμητική και Άλγεβρα. Μάθημα 3 ο, Τμήμα Α. Τρόποι απόδειξης Μαθηματικά: Αριθμητική και Άλγεβρα Μάθημα 3 ο, Τμήμα Α Ο πυρήνας των μαθηματικών είναι οι τρόποι με τους οποίους μπορούμε να συλλογιζόμαστε στα μαθηματικά. Τρόποι απόδειξης Επαγωγικός συλλογισμός (inductive)

Διαβάστε περισσότερα

Σημειώσεις Ανάλυσης Ι. Θεωρούμε γνωστούς τους φυσικούς αριθμούς

Σημειώσεις Ανάλυσης Ι. Θεωρούμε γνωστούς τους φυσικούς αριθμούς Σημειώσεις Ανάλυσης Ι 1. Οι ρητοί αριθμοί Θεωρούμε γνωστούς τους φυσικούς αριθμούς 1, 2, 3, και τις πράξεις (πρόσθεση - πολλαπλασιασμό)μεταξύ αυτών. Οι φυσικοί αριθμοί είναι επίσης διατεταγμένοι με κάποια

Διαβάστε περισσότερα

2 ) d i = 2e 28, i=1. a b c

2 ) d i = 2e 28, i=1. a b c ΑΣΚΗΣΕΙΣ ΘΕΩΡΙΑΣ ΓΡΑΦΩΝ (1) Εστω G απλός γράφος, που έχει 9 κορυφές και άθροισμα βαθμών κορυφών μεγαλύτερο του 7. Αποδείξτε ότι υπάρχει μια κορυφή του G με βαθμό μεγαλύτερο ή ίσο του 4. () Αποδείξτε ότι

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 14. Χρονική Πολυπλοκότητα 17, 20, 24 Απριλίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Υπολογίσιμα και Εφικτά Υπολογίσιμα Προβλήματα Είδαμε ότι 1. Οτιδήποτε μπορούμε να

Διαβάστε περισσότερα

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής:

Περιληπτικά, τα βήματα που ακολουθούμε γενικά είναι τα εξής: Αυτό που πρέπει να θυμόμαστε, για να μη στεναχωριόμαστε, είναι πως τόσο στις εξισώσεις, όσο και στις ανισώσεις 1ου βαθμού, που θέλουμε να λύσουμε, ακολουθούμε ακριβώς τα ίδια βήματα! Εκεί που πρεπει να

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ

ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ ΚΕΦΑΛΑΙΟ 3 ΤΟ ΔΙΩΝΥΜΙΚΟ ΘΕΩΡΗΜΑ Εισαγωγή Οι αριθμοί που εκφράζουν το πλήθος των στοιχείων ανά αποτελούν ίσως τους πιο σημαντικούς αριθμούς της Συνδυαστικής και καλούνται διωνυμικοί συντελεστές διότι εμφανίζονται

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Χρονική Πολυπλοκότητα

Θεωρία Υπολογισμού και Πολυπλοκότητα Χρονική Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Χρονική Πολυπλοκότητα Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Μέτρηση της Πολυπλοκότητας (7.1) Η κλάση Ρ (7.2) Η κλάση ΝΡ (7.3) ΝΡ-πληρότητα (7.4)

Διαβάστε περισσότερα

Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018

Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018 Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018 Άσκηση 9.1: Στο παρακάτω σχήμα φαίνονται δέκα λατινικοί χαρακτήρες (A, F, K, M, R, S, T, V, X και Z) με τη μορφή γράφων. Ποιοι από αυτούς είναι ισομορφικοί;

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ

ΔΕΙΓΜΑ ΠΡΙΝ ΤΙΣ ΔΙΟΡΘΩΣΕΙΣ - ΕΚΔΟΣΕΙΣ ΚΡΙΤΙΚΗ Συναρτήσεις Προεπισκόπηση Κεφαλαίου Τα μαθηματικά είναι μια γλώσσα με ένα συγκεκριμένο λεξιλόγιο και πολλούς κανόνες. Πριν ξεκινήσετε το ταξίδι σας στον Απειροστικό Λογισμό, θα πρέπει να έχετε εξοικειωθεί

Διαβάστε περισσότερα

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Σύνολα Συναρτήσεις και Σχέσεις Γραφήματα Λέξεις και Γλώσσες Αποδείξεις ΕΠΛ 211 Θεωρία

Διαβάστε περισσότερα

Σειρά Προβλημάτων 1 Λύσεις

Σειρά Προβλημάτων 1 Λύσεις ΕΠΛ2: Θεωρία Υπολογισμού και Πολυπλοκότητα Σειρά Προβλημάτων Λύσεις Άσκηση Να βρείτε το σφάλμα στην πιο κάτω απόδειξη. Ισχυρισμός: Όλα τα βιβλία που έχουν γραφτεί στη Θεωρία Υπολογισμού έχουν τον ίδιο

Διαβάστε περισσότερα