Αποφασισιµότητα / Αναγνωρισιµότητα Ορέστης Τελέλης telelis@unipi.gr Μη Επιλύσιµα Προβλήµατα Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς 2/12/2015 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 1 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 2 / 28 Η έννοια της αναγωγής Τερµατίζει µια δεδοµένη TM για δεδοµένη είσοδο; Βασικό σκεπτικό: Θέλουµε να αποδείξουµε τη µη επιλυσιµότητα προβλήµατος B. Εστω ότι γνωρίζουµε πως ένα πρόβληµα, A, είναι µη επιλύσιµο. Ανάγουµε την επίλυση του A στην επίλυση του B. Αν επιλύαµε το B, ϑα «χρησιµοποιούσαµε» τη µέθοδό µας για το A. Αυτό δείχνει ότι το A είναι το πολύ «τόσο δύσκολο» όσο το B. Επειδή όµως το A είναι µη επιλύσιµο, το επιχείρηµα οδηγεί σε άτοπο. Εποµένως το B πρέπει να είναι µη επιλύσιµο. Ορίζουµε: ΤΕΡΜΑΤΙΣΜΟΣ/TM = { M, w η TM M τερµατίζει για είσοδο w } Θεώρηµα: Η γλώσσα ΤΕΡΜΑΤΙΣΜΟΣ/TM δεν είναι ( Turing-)αποφασίσιµη. Σχόλια: Η γλώσσα αυτή (και το πρόβληµα) δεν αποτελούν το Πρόβληµα του Τερµατισµού. Το Πρόβ. του Τερµατισµού ϱωτά αν µια TM αποδέχεται δεδοµένη είσοδο. ιαισθητικά, το Πρόβληµα του Τερµατισµού «υποκρύπτει» το πρόβληµα του τίτλου. Αν αποφασίζεται η Αποδοχη/TM, ϑα πρέπει να αποφασίζεται η ΤΕΡΜΑΤΙΣΜΟΣ/TM. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 3 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 4 / 28
Απόδειξη Για δεδοµένη TM, M, είναι L(M) = ; Εστω ότι υπάρχει µια TM R που αποφασίζει την ΤΕΡΜΑΤΙΣΜΟΣ/TM. Για είσοδο M, w, η R: 1. Αποδέχεται, αν η M τερµατίζει (αποδέχεται ή απορρίπτει) για είσοδο w. 2. Απορρίπτει, αν η M δεν τερµατίζει για είσοδο w. Τότε, ορίζουµε TM που αποφασίζει το Πρόβληµα του Τερµατισµού (Αποδοχη/TM): Για είσοδο M, w, η TM S: 1. Εκτελεί την R, για είσοδο M, w. 2. Απορρίπτει, εφόσον η R απορρίψει. Ορίζουµε: /TM = { M για την TM M έχουµε L(M) = } Θεώρηµα: Η γλώσσα /TM δεν είναι αποφασίσιµη. Απόδειξη: Εστω ότι υπάρχει TM, R, που αποφασίζει για είσοδο M αν M /TM. Θα δείξουµε ότι TM που αποφασίζει την Αποδοχη/TM. (ΑΤΟΠΟ) 3. ιαφορετικά, προσοµοιώνει την M, για είσοδο w. 4. Αποδέχεται, αν αποδεχθεί η M, διαφορετικά, απορρίπτει. ΑΤΟΠΟ Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 5 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 6 / 28 Απόδειξη (Συνέχεια) ίνεται είσοδος M, w για το πρόβληµα (απόφασης) Αποδοχη/TM. εδοµένης της TM εισόδου M, ορίζουµε την ακόλουθη TM, M w : Για είσοδο z, η M w : 1. Απορρίπτει, αν z w. 2. Αν z = w, προσοµοιώνει M(w). Αποδέχεται, αν αποδέχεται η M(w). Τότε µπορούµε να ορίσουµε την ακόλουθη TM, S, για την Αποδοχη/TM: Για είσοδο M, w, η S: 1. Από την είσοδο M, w δηµιουργεί την M w. 2. Προσοµοιώνει την R (ορισµένη προηγουµένως), για είσοδο M w. 3. Απορρίπτει, αν η R αποδέχεται. ιαφορετικά, αποδέχεται. Επεξήγηση Εστω είσοδος M, w Αποδοχη/TM για την S. Τότε, η M w : απορρίπτει για είσοδο w, αποδέχεται για είσοδο = w. Και, τότε, η S: Προσοµοιώνει την R (για το πρόβληµα /TM) µε είσοδο M w. Η R απορρίπτει, διότι η M w αποδέχεται την w. Τότε η S αποδέχεται ορθώς, αφού M, w Αποδοχη/TM. Οµοίως επαληθεύεται ότι η S απορρίπτει είσοδο M, w Αποδοχη/TM. ιότι, τότε η M w δεν αποδέχεται καµία είσοδο. Εποµένως η R αποδέχεται είσοδο M W για την /TM. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 7 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 8 / 28
Για δεδοµένη TM, M, είναι η L(M) κανονική; Απόδειξη Ορίζουµε: REG/TM = { M, για την TM M, η L(M) είναι κανονική } Θεώρηµα: Η γλώσσα REG/TM δεν είναι αποφασίσιµη. Απόδειξη: Εστω ότι TM R που, για δεδοµένη TM M, αποφασίζει αν L(M) κανονική. είχνουµε ότι TM S που αποφασίζει την Αποδοχη/TM. Για είσοδο M, w, η TM S: 1. Κωδικοποιεί (στην ταινία) την ακόλουθη TM, M 0 n 1n, όπου: Για είσοδο x µηχανή Turing M 0 n 1 n: 1.1 Αποδέχεται, αν x είναι της µορφής 0 n 1 n, για n 0. 1.2 ιαφορετικά (όταν x δεν είναι της µορφής 0 n 1 n ), προσοµοιώνει την M για είσοδο w και αποδέχεται, εφόσον η M αποδέχεται. 2. Προσοµοιώνει την R, για είσοδο M 0 n 1 n. 3. Αποδέχεται, αν η R αποδέχεται. Απορρίπτει αν η R απορρίπτει. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 9 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 10 / 28 Επεξήγηση Αναγνωρίζουν δύο TMs την ίδια γλώσσα; Εστω είσοδος M, w Αποδοχη/TM για την S. Επειδή η M αποδέχεται την w, η TM M 0 n 1 n αποδέχεται κάθε x {0, 1}. Τότε η R αποδέχεται την είσοδο M 0 n 1 n, διότι {0, 1} κανονική. Κατά συνέπεια, η S ορθώς αποδέχεται την είσοδο M, w. Εστω είσοδος M, w Αποδοχη/TM για την S. Επειδή M δεν αποδέχεται w, η M 0 n 1 n αποδέχεται µόνο x {0n 1 n : n 0} Τότε η R απορρίπτει M 0 n 1 n, διότι {0n 1 n : n 0} όχι κανονική. Ορίζουµε: /TM = { M 1, M 2 οι M 1,M 2 είναι TMs και L(M 1 ) = L(M 2 ) } Θεώρηµα: Η γλώσσα /TM δεν είναι αποφασίσιµη. Απόδειξη: Εστω TM R που αποφασίζει τη γλώσσα /TM. Θα δείξουµε ότι υπάρχει TM S που αποφασίζει τη γλώσσα /TM. Κατά συνέπεια, η S ορθώς απορρίπτει την είσοδο M, w. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 11 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 12 / 28
Απόδειξη Για είσοδο M, η µηχανή Turing S: 1. Κωδικοποιεί µια µηχανή M, που απορρίπτει όλες τις εισόδους της. 2. Προσοµοιώνει τη µηχανή R, για είσοδο M, M. Αναγωγές Απεικόνισης 3. Αν η R αποδέχεται, αποδέχεται και η S. 4. ιαφορετικά, η R απορρίπτει και απορρίπτει και η S. Επεξήγηση: Αν αποφασίζεται η /TM, τότε αποφασίζεται και η /TM. (ΑΤΟΠΟ) Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 13 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 14 / 28 Υπολογίσιµες Απεικονίσεις Παράδειγµα 1 Ορισµός: Μια συνάρτηση f : Σ Σ λέγεται υπολογίσιµη αν: Ολες οι συνήθεις αριθµητικές πράξεις µεταξύ ακεραίων αποτελούν υπολογίσιµες συναρτήσεις. Μπορούµε, π.χ., να έχουµε µια µηχανή Turing που: υπάρχει µηχανή Turing που, µε είσοδο w L(Σ ), τερµατίζει, έχοντας στην ταινία της µόνο τη λέξη f(w) L(Σ ). δέχεται είσοδο m, n, όπου m, n ακέραιοι, «επιστρέφει» (αφήνει πάνω στην ταινία σαν έξοδο) m + n. Πώς ϑα µπορούσαµε να περιγράψουµε λεπτοµερώς µια τέτοια µηχανή; Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 15 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 16 / 28
Παράδειγµα 2 Αναγωγή Απεικόνισης Μια υπολογίσιµη συνάρτηση µπορεί επιτελεί µετασχηµατισµό µιας TM. Παράδειγµα: συνάρτηση f που δέχεται σαν όρισµα µια λέξη w και: Ορισµός: Μια γλώσσα A είναι απεικονιστικά αναγώγιµη σε µια γλώσσα B αν: Αν w = M, όπου M µια TM, τότε η f επιστρέφει M, όπου: υπάρχει υπολογίσιµη συνάρτηση f : Σ Σ, 1. M µηχανή Turing µε L(M ) = L(M), 2. η M δεν προσπαθεί ποτέ να µετακινήσει την κεφαλή της πέρα από το αριστερό άκρο της ταινίας της. Η f µετασχηµατίζει την M προσθέτοντας επιπλέον καταστάσεις. Αν η w δεν είναι κωδικοποίηση µηχανής Turing, τότε η f επιστρέφει ɛ. τέτοια ώστε, για κάθε λέξη w: w A f(w) B. η f λέγεται αναγωγή της A στη B. Συµβολίζουµε µε A m B την αναγωγιµότητα της A στη B. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 17 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 18 / 28 Παρατηρήσεις Αναγωγές Απεικόνισης: Ιδιότητες και Χρησιµότητα Ερωτήµατα «ανήκειν» στην A απεικονίζονται υπολογιστικά: σε ερωτήµατα «ανήκειν» στη B. αντί να ελέγχουµε αν w A, µπορούµε να ελέγχουµε αν f(w) B. µε την υπολογιστική επιβάρυνση της f. Πρόβληµα που έχει αναγωγή απεικόνισης σε ήδη λυµένο πρόβληµα επιλύεται µέσω του δεύτερου. Η αναγωγή απεικόνισης ονοµάζεται έτσι λόγω της (υπολογίσιµης) συνάρτησης f (που είναι µια απεικόνιση). Θεώρηµα: Αν A m B και B αποφασίσιµη, τότε και A αποφασίσιµη. Απόδειξη: Ορίζουµε µια TM M A, που αποφασίζει την A. δεδοµένης µιας TM M B που αποφασίζει τη B Για είσοδο w, η M A : 1. Υπολογίζει τη λέξη f(w), όπου f : Σ Σ η υπολογίσιµη αναγωγή από την A στη B. 2. Προσοµοιώνει τη µηχανή M B για είσοδο f(w). 3. Επιστρέφει την έξοδο της M B. Χρήσιµο: Αν A m B και A µη αποφασίσιµη, τότε και B µη αποφασίσιµη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 19 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 20 / 28
Παράδειγµα 1 Παράδειγµα 2 είξαµε: αναγωγή της Αποδοχη/TM στην ΤΕΡΜΑΤΙΣΜΟΣ/TM. Θα δείξουµε επίσης ότι: ΤΕΡΜΑΤΙΣΜΟΣ/TM m Αποδοχη/TM. Αρκεί η περιγραφή TM που υπολογίζει την απεικόνιση. Για είσοδο M, w, η µηχανή Turing F: 1. Κωδικοποιεί (στην ταινία της) την εξής µηχανή, M : Για είσοδο x η µηχανή Turing M : είξαµε: µη αποφασισιµότητα της /TM. Η απόδειξη ηταν αναγωγή απεικόνισης /TM m /TM. Απεικονίζει κάθε M /TM σε µια M, M 0 /TM, όπου: 1 Προσοµοιώνει τη µηχανή M για είσοδο x. 2 Αν η M αποδέχεται, αποδέχεται και η M. 3 Αν η M απορρίπτει, η M «εγκλωβίζεται» σε ατέρµονο υπολογισµό. M είναι µια µηχανή που απορρίπτει όλες τις εισόδους της. 2. «Επιστρέφει» (γράφοντας στην ταινία της) τη λέξη M, w. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 21 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 22 / 28 Παράδειγµα 3 Αναγωγές Απεικόνισης για Αναγνωρισιµότητα Εχουµε ήδη αποδείξει ότι η γλώσσα /TM δεν είναι αποφασίσιµη. Με αναγωγή της γλώσσας Αποδοχη/TM στη γλώσσα /TM. Υπάρχει αντίστοιχη αναγωγή απεικόνισης από την Αποδοχη/TM στην /TM; Μπορούµε εύκολα να κατασκευάσουµε µια µηχανή F, που µετατρέπει µια είσοδο M, w σε µια λέξη M w. Οµως, η M αποδέχεται την w αν και µόνο αν L(M w ) =. Εποµένως, η F «υλοποιεί» (υπολογίζει) µια αναγωγή απεικόνισης από την Αποδοχη/TM στη γλώσσα /TM. Αποδεικνύει ϐεβαίως ότι η /TM δεν είναι αποφασίσιµη. Αλλά δεν αποτελεί αναγωγή απεικόνισης της Αποδοχη/TM στην /TM. Θεώρηµα: Αν A m B και B αναγνωρίσιµη, τότε και A αναγνωρίσιµη. Απόδειξη: Ορίζουµε TM M A, που αναγνωρίζει την A. δεδοµένης TM M B που αναγνωρίζει τη B. Για είσοδο w, η TM M A : 1. Υπολογίζει τη λέξη f(w), όπου f : Σ Σ η υπολογίσιµη αναγωγή από την A στη B. 2. Προσοµοιώνει τη µηχανή M B για είσοδο f(w). 3. Επιστρέφει την έξοδο της M B, εφόσον η M B τερµατίσει. Χρήσιµο: Αν A m B και A µη αναγνωρίσιµη, τότε και B µη αναγνωρίσιµη. Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 23 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 24 / 28
Τυπική Εφαρµογή Μια (και) συµπληρωµατικά µη αναγνωρίσιµη γλώσσα Προκύπτει όταν ϑέσουµε A = Αποδοχη/TM, µη αναγνωρίσιµη γλώσσα. Αν ϑέλουµε να δείξουµε ότι η B µη αναγνωρίσιµη, αρκεί να δείξουµε: Αποδοχη/TM m B Σύµφωνα µε τον ορισµό της απεικονιστικής αναγωγιµότητας: A m B Ā m B Εποµένως µπορούµε να δείξουµε ότι B µη αναγνωρίσιµη αποδεικνύοντας: Θεώρηµα Η γλώσσες /TM και /TM δεν είναι αναγνωρίσιµες. Χρειαζόµαστε δύο απεικονιστικές αναγωγές: 1. Αποδοχη/TM m /TM. 2. Αποδοχη/TM m /TM. Αποδοχη/TM m B Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 25 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 26 / 28 Απόδειξη (1/2) Απόδειξη (2/2) Η παρακάτω TM F υλοποιεί την αναγωγή απεικόνισης Αποδοχη/TM m /TM: Για είσοδο M, w, η µηχανή Turing, F: 1. Κωδικοποιεί (στην ταινία της) τη µηχανή Turing M 1 : Για κάθε είσοδο, η µηχανή Turing M 1 απορρίπτει. 2. Κωδικοποιεί (στην ταινία της) τη µηχανή Turing M 2 : Για κάθε είσοδο, η µηχανή Turing M 2 : 2.1 Προσοµοιώνει την M για είσοδο w. 2.2 Αποδέχεται, αν η M αποδέχεται. 3. «Επιστρέφει» τη λέξη M 1, M 2 (την κωδικοποιήση των δύο µηχανών). Η παρακάτω TM G υλοποιεί την αναγωγή απεικόνισης Αποδοχη/TM m /TM: Για είσοδο M, w, η µηχανή Turing, G: 1. Κωδικοποιεί (στην ταινία της) τη µηχανή Turing M 1 : Για κάθε είσοδο, η µηχανή Turing M 1 αποδέχεται. 2. Κωδικοποιεί (στην ταινία της) τη µηχανή Turing M 2 : Για κάθε είσοδο, η µηχανή Turing M 2 : 2.1 Προσοµοιώνει την M για είσοδο w. 2.2 Αποδέχεται, αν η M αποδέχεται. 3. «Επιστρέφει» τη λέξη M 1, M 2 (την κωδικοποιήση των δύο µηχανών). Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 27 / 28 Ο. Τελέλης Πανεπιστήµιο Πειραιώς Αποφασισιµότητα 2/12/2015 28 / 28