Οι γλώσσες των Μηχανών Turing Αποφασισιµότητα / Αναγνωρισιµότητα Μια TM µπορεί ένα από τα δύο: να αποφασίζει µια γλώσσα L Αποδέχεται όταν (η είσοδος στην TM) w L. Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς 2/12/2015 Απορρίπτει όταν (η είσοδος στην TM) w L. Η γλώσσα L στην περίπτωση αυτή λέγεται αναδροµική. να αναγνωρίζει (ηµιαποφασίζει) µια γλώσσα L Αποδέχεται όταν (η είσοδος στην TM) w L. Απορρίπτει ή Εγκλωβίζεται σε Ατέρµονο Υπολογισµό όταν w L. όσο κι αν περιµένουµε, µπορεί να µη µάθουµε ποτέ. Η γλώσσα L στην περίπτωση αυτή λέγεται αναδροµικά απαριθµήσιµη. Κάθε αναδροµική γλώσσα είναι αναδροµικά απαριθµήσιµη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 1 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 2 / 60 Απαριθµητές (Enumerators) Απόδειξη (1/2) Μηχανή Turing συνδεδεµένη µε έναν «εκτυπωτή». Ο εκτυπωτής χρησιµεύει ώς συσκευή εξόδου. Η µηχανή εκτυπώνει λέξεις της γλώσσας που αναγνωρίζει. Ο απαριθµητής έχει αρχικά κενή ταινία. Αν δεν τερµατίζει, µπορεί να εκτυπώνει λέξεις επ άπειρον. Απαριθµεί τις λέξεις της γλώσσας που αναγνωρίζει, µε οποιαδήποτε σειρά, ίσως και µε επαναλήψεις. Αν µια γλώσσα A απαριθµείται από απαριθµητή E, τότε αναγνωρίζεται από TM. Αλγοριθµική Περιγραφή της TM, για είσοδο w: 1. Η TM «εκτελεί» τον απαριθµητή, E. Κάθε ϕορά που ο E εκτυπώνει λέξη w, η TM συγκρίνει τη w µε την w. 2. Αν εµφανιστεί η w στην έξοδο του E, η TM αποδέχεται. Θεώρηµα: Μια γλώσσα είναι αναγνωρίσιµη ανν απαριθµείται από απαριθµητή. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 3 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 4 / 60
Απόδειξη (2/2) Αναδροµικές Συναρτήσεις Αν µια γλώσσα αναγνωρίζεται από TM, τότε απαριθµείται από απαριθµητή. εδοµένης TM και καταλόγου, w 1, w 2,..., όλων των λέξεων, επί σχετικού αλφαβήτου, Σ: Για i = 1, 2, 3,... ο απαριθµητής επαναλαµβάνει: 1. Εκτέλεση i ϐηµάτων της TM, για καθεµία από τις εισόδους w 1, w 2,... 2. Κάθε ϕορά που η TM αποδέχεται, ο απαριθµητής εκτυπώνει τη λέξη. Παρατηρήσεις: Ενας κατάλογος w 1, w 2,... όλων των λέξεων επί του Σ είναι εφικτός: Εστω συνάρτηση f : Σ Σ. Υπολογίζεται από TM αν: Η TM τερµατίζει για κάθε είσοδο w Σ. Η TM αφήνει στην ταινία γραµµένη την f(w) Σ, στον τερµατισµό. Τότε η f λέγεται αναδροµική συνάρτηση. ιαισθητικά: η f µπορεί να οριστεί µέσω αναδροµικής διαδικασίας. διότι το Σ είναι αριθµήσιµο σύνολο, επειδή οι λέξεις του έχουν πεπερασµένο µήκος (περισσότερα έπονται) Κλεψιά: ο κατάλογος υπονοεί έναν «κρυµένο» απαριθµητή. Ολες οι «προφανείς» αριθµητικές f : N k N είναι αναδροµικές. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 5 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 6 / 60 Η Καθολική Μηχανή Turing a. k. a. «Υπολογιστής» Η καθολική TM U δέχεται σαν είσοδο: Την κωδικοποίηση µιας TM M σε πεπερασµένο αλφάβητο της U. Την κωδικοποίηση της εισόδου w της M (στο αλφάβητο της U). Προσοµοιώνει την M για είσοδο w. Το πεπερασµένο αλφάβητο της U πρέπει να µπορεί να κωδικοποιήσει: Κάθε (πεπερασµένη) TM, µε οποιοδήποτε αλφάβητο ταινίας. Το (οποιοδήποτε πεπερασµένο) αλφάβητο (γλώσσας) εισόδου της TM. Βολικά Αλφάβητα: Σ U = {0, 1}, Σ U = {0, 1,..., 9, A, B,..., F}. (δυαδική κωδικοποίηση, δεκαεξαδική κωδικοποίηση, κ.λ.π.) Γιατί είναι εφικτό; ιότι το (άπειρο) σύνολο όλων των (πεπερασµένων) TMs και το (άπειρο) σύνολο όλων των πεπερασµένων λέξεων επί του Σ U είναι ισοµεγέθη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 7 / 60 Η Καθολική Μηχανή Turing Μηχανή Τριών Ταινιών: Η πρώτη έχει την κωδικοποίηση των περιεχοµένων της ταινίας της M. Η δεύτερη έχει κωδικοποιηµένη την M καθεαυτή. Η τρίτη έχει κωδικοποιηµένη την τρέχουσα κατάσταση της M. Υπολογισµός: Αρχικά, η είσοδος M, w γράφεται στην 1η ταινία. Η U µετακινεί την M στη 2η ταινία. Γράφει την w στην αρχή (αριστερά) της 1ης ταινίας. Γράφει την αρχική κατάσταση της M στην 3η ταινία. Προσοµοιώνει σε κάθε ϐήµα της κάθε ϐήµα της M για είσοδο w. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 8 / 60
Εισαγωγικά Το σηµαντικότερο αποτέλεσµα της Θεωρίας Υπολογισµού. Το Πρόβληµα του Τερµατισµού Μπορούν όλα τα προβλήµατα να επιλυθούν µε µηχανή Turing; Εστω ότι δίνεται ένα πρόγραµµα: κώδικας και προδιαγραφές εισόδου, περιγραφή εξόδου, προδιαγραφή λειτουργίας, κ.λ.π Να επαληθευτεί ότι λειτουργεί σύµφωνα µε τις προδιαγραφές του. Μπορούµε να αυτοµατοποιήσουµε την επαλήθευση µέσω υπολογιστή; Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 9 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 10 / 60 Εισαγωγικά Μέθοδος ιαγωνιοποίησης (1/2) Georg Cantor, 1873 Ορίζουµε: Αποδοχη/TM = { M, w η M είναι TM που αποδέχεται τη λέξη w }. Θα αποδείξουµε το ακόλουθο: Θεώρηµα Η γλώσσα Αποδοχη/TM δεν είναι αποφασίσιµη. Πρόβληµα σύγκρισης µεγεθών άπειρων συνόλων. Πώς αποφασίζουµε αν κάποιο είναι µεγαλύτερο από άλλο ή αν είναι ισοµεγέθη; ε µπορούµε να µετρήσουµε τα στοιχεία τους, όπως σε πεπερασµένα σύνολα. Παράδειγµα: { 0, 1 } και άρτιοι ϑετικοί ακέραιοι. Πώς συγκρίνονται; Παρατήρηση: ύο πεπερασµένα σύνολα είναι ισοµεγέθη αν ταιριάζονται τα στοιχεία του ενός µε του άλλου σε Ϲεύγη. Η ίδια µέθοδος εφαρµόζεται και στα απειροσύνολα! Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 11 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 12 / 60
Μέθοδος ιαγωνιοποίησης (2/2) Παράδειγµα 1 Ορισµοί: Εστω A, B σύνολα και συνάρτηση f : A B. Η f είναι: Μονοµορφική ή 1 1 (ένα προς ένα), αν: f(a) f(a ) όταν a a Επιµορφική ή επί του B αν «χρησιµοποιεί» όλα τα στοιχεία του B, δηλαδή αν: για κάθε b B υπάρχει a A τέτοιο ώστε f(a) = b. Τα A και B είναι ισοµεγέθη αν υπάρχει συνάρτηση f : A B που είναι: ταυτόχρονα 1 1 και επί του B. Εστω N = {1, 2, 3,... } το σύνολο των ϕυσικών αριθµών. Εστω E = {2, 4, 6,... } το σύνολο των άρτιων ϕυσικών αριθµών. ιαπιστώνουµε ότι τα N και E είναι ισοµεγέθη. Μπορούµε να ορίσουµε την αντιστοιχία f : N E, µε f(n) = 2n. Το παράδειγµα µοιάζει παράδοξο, καθώς γνωρίζουµε ότι E N. Ορισµός Ενα σύνολο λέγεται αριθµήσιµο αν είναι πεπερασµένο ή ισοµεγέθες µε το N. Τότε, η f λέγεται αντιστοιχία. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 13 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 14 / 60 Παράδειγµα 2 (α) Παράδειγµα 2 (ϐ) Εστω Q = { m n m, n N } το σύνολο των ϱητών αριθµών. 1/1 1/2 1/3 1/4 1/5... Παρότι Q N, ϑα δείξουµε ότι είναι αριθµήσιµο (ισοµεγέθες µε το N). Κατασκευάζουµε άπειρο πίνακα (άπειρες γραµµές, άπειρες στήλες): Γραµµή i: όλοι οι αριθµοί του Q µε αριθµητή i. 2/1 2/2 2/3 2/4 2/5... 3/1 3/2 3/3 3/4 3/5... Στήλη j: όλοι οι αριθµοί του Q µε παρονοµαστή j. Στοιχείο (i, j): έχει τον αριθµό i / j. 4/1 4/2 4/3 4/4 4/5... Μετατρέπουµε τον πίνακα σε «κατάλογο» του Q, προσεκτικά. Παραθέτουµε τις διαγωνίους του πίνακα από το (i, 1) έως το (1, i) για i = 1, 2,..., χωρίς τα στοιχεία της κύριας διαγωνίου, όταν i > 1. 5/1 5/2......... Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 15 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 16 / 60
Παράδειγµα 3 (α) Παράδειγµα 3 (ϐ) Θεώρηµα Το σύνολο R των πραγµατικών αριθµών είναι υπεραριθµήσιµο. Με απαγωγή σε άτοπο, δείχνουµε ότι δεν υπάρχει αντιστοιχία f : N R. Εστω ότι υπάρχει αντιστοιχία f : N R. Θα εντοπίσουµε x R που δε «συνταιριάζεται» µε κανένα στοιχείο του N: τότε, η f δεν είναι επί του R, εποµένως, δε συνιστά αντιστοιχία, σε αντίφαση προς την υπόθεσή µας. Προκειµένου να εντοπίσουµε το x R, ϑα το κατασκευάσουµε. Επιλέγουµε κάθε ψηφίο του x κατάλληλα, ώστε να διαφέρει από κάποιον από τους πραγµατικούς αριθµούς που έχουν συνταιριαστεί µε στοιχεία του N. Παράδειγµα. Αν µέρος της f(n) είναι αυτό που δίνεται στον πίνακα αριστερά: n f(n) 1 3. 1 4 1 5 9... 2 5 5. 5 5 5 5... 3 0. 1 2 3 4 5... 4 0. 5 0 0 0 0............ Επιλέγουµε x (0, 1) που διαφέρει: - στο 1ο δεκαδικό ψηφίο από το f(1). - στο 2ο δεκαδικό ψηφίο από το f(2). - στο 3ο δεκαδικό ψηφίο από το f(3). - στο 4ο δεκαδικό ψηφίο από το f(4). - κ.ο.κ. Σηµείωση: Ϲεύγη αριθµών 0. 1 9 9 9... και 0. 2 0 0 0... είναι ίσοι, παρά τη διαφορετική δεκαδική τους αναπαράσταση. Για το λόγο αυτό ϕροντίζουµε να µην επιλέγουµε ποτέ τα ψηφία 9 και 0 σαν δεκαδικά ψηφία του x. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 17 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 18 / 60 Συνέπεια του Παραδείγµατος 3 Απόδειξη (1/3) αλφάβητο Σ, πεπερασµένο πλήθος λέξεων επί του Σ µε συγκεκριµένο µήκος. Πόρισµα Υπάρχουν γλώσσες που δεν είναι Turing-αναγνωρίσιµες. ικαιολόγηση: Το σύνολο των µηχανών Turing είναι αριθµήσιµο. Το σύνολο όλων των γλωσσών είναι υπεραριθµήσιµο. Μπορούµε να γράψουµε «κατάλογο» που, αρχικά, έχει όλες τις λέξεις µήκους 0, κατόπιν όλες τις λέξεις µήκους 1, µετά όλες τις λέξεις µήκους 2 κ.λ.π. Αρα, το Σ είναι αριθµήσιµο. Κάθε µηχανή Turing, M, µπορεί να κωδικοποιηθεί µε κάποια λέξη, M, του Σ. ιαγράφουµε από τον κατάλογο λέξεων του Σ τις λέξεις που δεν είναι TMs. ιαγράφουµε τις λέξεις που κωδικοποιούν την ίδια TM µε προηγούµενη λέξη. Ο εναποµένων κατάλογος είναι αριθµήσιµος, καθώς κάθε στοιχείο του µπορεί να αντιστοιχηθεί σε διαφορετικό στοιχείο του N. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 19 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 20 / 60
Απόδειξη (2/3) Απόδειξη (3/3) Το σύνολο B όλων των άπειρου µήκους δυαδικών ακολουθιών είναι υπεραριθµήσιµο. Γιατί; Μπορούµε να το αποδείξουµε µε διαγωνιοποίηση, όπως για το R. Εστω L το σύνολο όλων των γλωσσών επί του αλφαβήτου Σ. Θα δείξουµε ότι τα L και B είναι ισοµεγέθη. Θα δώσουµε µια αντιστοιχία µεταξύ των στοιχείων των L και B. Ορίζουµε τη χαρακτηριστική ακολουθία, χ A, κάθε γλώσσας A L. Εστω Σ = { s 1, s 2, s 2,... }. Ορίζουµε το i-οστό ψηφίο της χ A να είναι 1, αν s i A, διαφορετικά 0. Παράδειγµα: Η γλώσσα των λέξεων που ξεκινούν από 0. Η συνάρτηση f : L B, όπου f(a) = χ A είναι: 1 1 και επί του B. Εποµένως, είναι αντιστοιχία. Αντιστοιχίσαµε: κάθε στοιχείο του (υπεραριθµήσιµου) B σε ένα στοιχείο (γλώσσα επί του Σ) του L. Εποµένως, το L πρέπει να είναι ισοµεγέθες του B, άρα, υπεραριθµήσιµο. Σ = { ɛ, 0, 1, 00, 01, 10, 11, 000, 001,... } A = { 0, 00, 01, 000, 001,... } χ A = 0 1 0 1 1 0 0 1 1... Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 21 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 22 / 60 Το Πρόβληµα του Τερµατισµού (Halting Problem) Απόδειξη (1/3) Ορίζουµε τη Γλώσσα: Αποδοχη/TM = { M, w η M είναι TM και αποδέχεται τη w } Ερώτηµα: Είναι (Turing-)αποφασίσιµη η Αποδοχη/TM; Αν είναι, τότε υπάρχει TM που αποφασίζει αν: η M αποδέχεται την w, ή η M απορρίπτει την w. Οταν η TM αποδέχεται, η M αποδέχεται και, εποµένως, η M τερµατίζει. Υποθέτουµε ότι υπάρχει TM, H, που αποφασίζει την Αποδοχη/TM: { αποδοχή αν η M αποδέχεται τη w H( M, w ) = απόρριψη αν η M δεν αποδέχεται τη w Κατασκευάζουµε µια νέα TM, D, που χρησιµοποιεί την H σαν υπορουτίνα. Η D καλεί την H για να προσδιορίσει πώς συµπεριφέρεται η M µε είσοδο τη λέξη M. Κατόπιν, η D αποκρίνεται το αντίθετο από την M: Οταν η TM απορρίπτει, τότε: αποδέχεται όταν η M δεν αποδέχεται, δηλ. η H( M, M ) απορρίπτει, η M είτε τερµατίζει απορρίπτοντας (τη w), απορρίπτει όταν η M αποδέχεται, δηλ. η H( M, M ) αποδέχεται. είτε υπολογίζει ατέρµονα χωρίς να αποδέχεται ποτέ. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 23 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 24 / 60
Απόδειξη (2/3) Απόδειξη (3/3) Για είσοδο M, η µηχανή Turing D: 1. Εκτελεί (προσοµοιώνει) την H, για είσοδο M, M. 2. Αποδέχεται αν η H απορρίπτει, διαφορετικά, απορρίπτει. Αρα, ό,τι κι αν αποκριθεί η D, θα αποκριθεί ταυτόχρονα και το αντίθετο!!! Εποµένως: D( M ) = { αποδοχή απόρριψη αν η M δεν αποδέχεται τη λέξη M αν η M αποδέχεται τη λέξη M Προφανώς αυτό δε γίνεται, η D δε µπορεί να υπάρχει. Ορίσαµε τη D µέσω της H, την οποία ορίσαµε µέσω της M. Εποµένως δε µπορεί να υπάρχει η H. Τώρα, εκτελούµε τη µηχανή D µε είσοδο τον εαυτό της! Και λαµβάνουµε: { αποδοχή αν η D δεν αποδέχεται τη λέξη D D( D ) = απόρριψη αν η D αποδέχεται τη λέξη D Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 25 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 26 / 60 Ερµηνεία µε ιαγωνιοποίηση (1/3) Ερµηνεία µε ιαγωνιοποίηση (2/3) Συνοψίζουµε τους ορισµούς µας από την απόδειξη: Η H αποδέχεται τη λέξη M, w αν και µόνο αν η M αποδέχεται τη λέξη w. Η D απορρίπτει τη λέξη M αν και µόνο αν η M αποδέχεται τη λέξη M. Η D απορρίπτει τη λέξη D αν και µόνο αν η D αποδέχεται τη λέξη D. Κατασκευάζουµε έναν πίνακα µε άπειρες γραµµές και άπειρες στήλες. Μία γραµµή για κάθε δυνατή µηχανή Turing, M i, και µία στήλη για την κωδικοποίησή της σαν λέξη. M 1 M 2 M 3 M 4... M 1 αποδοχή αποδοχή... M 2 αποδοχή αποδοχή αποδοχή αποδοχή... M 3... M 4 αποδοχή αποδοχή..................... Σηµείωση: όπου δεν έχουµε γράψει «αποδοχή», σηµαίνει ότι η M µε είσοδο την κωδικοποίηση του εαυτού της είτε τερµατίζει απορρίπτοντας, είτε υπολογίζει ατέρµονα. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 27 / 60 Ξαναγράφουµε τον πίνακα, µε τη συµπεριφορά της H σε κάθε κελί: H M 1 M 2 M 3 M 4... M 1 αποδοχή απόρριψη αποδοχή απόρριψη... M 2 αποδοχή αποδοχή αποδοχή αποδοχή... M 3 απόρριψη απόρριψη απόρριψη απόρριψη... M 4 αποδοχή αποδοχή απόρριψη απόρριψη..................... Παρατήρηση: η µηχανή Turing D, ϑα πρέπει να ϐρίσκεται στη λίστα όλων των µηχανών Turing, είναι δηλαδή µια από τις M 1, M 2, M 3,... Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 28 / 60
Ερµηνεία µε ιαγωνιοποίηση (3/3) Μια µη αναγνωρίσιµη γλώσσα Προσθέτουµε στον προηγούµενο πίνακα µια γραµµή και στήλη για την D: H M 1 M 2 M 3 M 4... D... M 1 αποδοχή απόρριψη αποδοχή απόρριψη... απόρριψη... M 2 αποδοχή αποδοχή αποδοχή αποδοχή... απόρριψη... M 3 απόρριψη απόρριψη απόρριψη απόρριψη... αποδοχή... M 4 αποδοχή αποδοχή απόρριψη απόρριψη... αποδοχή........................... D απόρριψη απόρριψη αποδοχή αποδοχή...???........................... Η D υπολογίζει το αντίθετο των στοιχείων της διαγωνίου του πίνακα. Τότε, όµως, στη ϑέση της διαγωνίου που αντιστοιχεί στον εαυτό της, υπολογίζει το αντίθετο της δικής της απόφασης!!!! ΑΤΟΠΟ Αποδείξαµε ότι η Αποδοχη/TM δεν είναι αποφασίσιµη (Το πρόβληµα του τερµατισµού). Είναι όµως αναγνωρίσιµη: Μια TM για είσοδο M, w, προσοµοιώνει την M µε είσοδο w. Η TM τερµατίζει αποδεχόµενη, αν τερµατίζει η M αποδεχόµενη. Θα εντοπίσουµε µια γλώσσα που δεν είναι καν ( Turing-)αναγνωρίσιµη. Μια γλώσσα, A, είναι συµπληρωµατικά αναγνωρίσιµη, αν η Ā = { w w A } είναι αναγνωρίσιµη. Θεώρηµα Μια γλώσσα είναι αποφασίσιµη αν και µόνο αν είναι αναγνωρίσιµη και συµπληρωµατικά αναγνωρίσιµη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 29 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 30 / 60 Απόδειξη (1/2) Απόδειξη (2/2) Αν µια γλώσσα, A, είναι αποφασίσιµη: Τότε και η Ā είναι αποφασίσιµη (γιατί;) Εποµένως, η A και η Ā, είναι αναγνωρίσιµες (αφού είναι αποφασίσιµες). Αρα η A είναι ταυτόχρονα αναγνωρίσιµη και συµπληρωµατικά αναγνωρίσιµη. Εστω ότι η A και η Ā είναι αναγνωρίσιµες. Υπάρχουν δηλαδή µηχανές Turing M και M, που τερµατίζουν αποδεχόµενες οποιαδήποτε λέξη w A και w Ā, αντιστοίχως. Τότε µπορούµε να ορίσουµε τη µηχανή Turing T που αποφασίζει την A; Για είσοδο w, η µηχανή T: 1. Προσοµοιώνει παράλληλα τις M και M για είσοδο w. 2. Αν αποδεχθεί η M, αποδέχεται. Αν αποδεχθεί η M, απορρίπτει. Σχόλια: Είναι σηµαντικό η T να προσοµοιώνει παράλληλα τις M και M. ηλαδή, να εκτελεί ένα ϐήµα από την M, κατόπιν ένα ϐήµα από την M. Ετσι διασφαλίζουµε ότι τερµατίζει πάντα (και, εποµένως, αποφασίζει)! Αν προσοµοίωνε πρώτα την M ή την M και µετά την M ή την M αντίστοιχα: µπορεί η πρώτη προσοµοίωση να µην τερµάτιζε ποτέ!!! Τότε, ούτε η T ϑα τερµάτιζε. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 31 / 60 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 32 / 60
Η γλώσσα Αποδοχη/TM Πόρισµα Η γλώσσα Αποδοχη/TM δεν είναι (Turing-)αναγνωρίσιµη. Απόδειξη: Γνωρίζουµε ότι η Αποδοχη/TM είναι αναγνωρίσιµη. Αν είναι αναγνωρίσιµη και η Αποδοχη/TM, τότε η Αποδοχη/TM είναι αποφασίσιµη (από το προηγούµενο ϑεώρηµα). Οµως γνωρίζουµε ότι η Αποδοχη/TM δεν είναι αποφασίσιµη (Πρόβληµα Τερµατισµού) ΑΤΟΠΟ! Εποµένως η Αποδοχη/TM δεν είναι αναγνωρίσιµη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 33 / 60