Σειρά Προβλημάτων 1 Λύσεις Άσκηση 1 Έστω αλφάβητο Σ και γλώσσες Λ 1, Λ 2 επί του αλφάβητου αυτού. Να διερευνήσετε κατά πόσο ισχύει κάθε μια από τις πιο κάτω σχέσεις. Σε περίπτωση που μια σχέση ισχύει να το αποδείξετε, διαφορετικά να δώσετε αντιπαράδειγμα. (α) (Λ 1 Λ 2) * * = (Λ 1 Λ 2* ) * (β) (Λ 1 Λ 2) * = (Λ 1* Λ 2* ) * (α) H σχέση αυτή δεν ισχύει και το επιδεικνύουμε με σχετικό αντιπαράδειγμα. Έστω Λ 1 = {,} και Λ 2 = {}. Τότε (Λ 1 Λ 2) * = {} * * και (Λ 1 Λ 2* ) * = ({,} * {} * ) * * Στην περίπτωση αυτή ενώ η λέξη ανήκει στη γλώσσα (Λ 1 Λ 2* ) * αλλά δεν ανήκει στη γλώσσα (Λ 1 Λ 2) *. (β) Η σχέση ισχύει και ακολουθεί η σχετική απόδειξη. Πρέπει να δείξουμε ότι για οποιαδήποτε λέξη w ισχύει ότι w (Λ 1 Λ 2) * αν και μόνο αν w (Λ 1* Λ 2* ) * Θα θεωρήσουμε τις δύο κατευθύνσεις του «αν και μόνο αν» ξεχωριστά. Κατ αρχήν, ας υποθέσουμε ότι w (Λ 1 Λ 2) *. Τότε, από τον ορισμό της πράξης της σώρευσης, ισχύει ότι w = x 1 x k όπου k 0 και x i Λ 1 Λ 2 για κάθε i. Αφού όμως x i Λ 1 Λ 2 ισχύει επίσης ότι x i Λ 1* Λ 2*. Επομένως w = x 1 x k όπου x i (Λ 1* Λ 2* ) και άρα w (Λ 1* Λ 2* ) *. Για την αντίθεση κατεύθυνση, ας υποθέσουμε ότι w (Λ 1* Λ 2* ) *. Τότε, από τον ορισμό της πράξης της σώρευσης, ισχύει ότι w = x 1 x * k όπου k 0 και x i Λ 1* Λ 2 για κάθε i. Αφού όμως x i Λ 1* Λ 2*, τότε κάθε x i αποτελεί είτε τη σώρευση λέξεων του Λ 1 είτε τη σώρευση λέξεων του Λ 2. Δηλαδή, κάθε x i μπορεί να γραφτεί ως x i = y 1 y m όπου y i Λ 1 Λ 2. Επομένως w = y 1 y n όπου y i Λ 1 Λ 2 και άρα w (Λ 1 Λ 2) *. Άσκηση 2 Υποθέστε ότι το σύνολο L είναι μια γλώσσα επί του αλφαβήτου {,} τα στοιχεία του οποίου παράγονται από τους πιο κάτω κανόνες: (1) ε L (2) Αν u L τότε u L και u L. (3) Αν u,v L τότε uv L. (α) Να αποδείξετε ότι για κάθε λέξη w L, η w περιέχει τον ίδιο αριθμό από και. (β) Να αποδείξετε ότι αν w μια λέξη που περιέχει τον ίδιο αριθμό από και τότε w L. (α) Η απόδειξη θα γίνει με επαγωγή πάνω στο n, το πλήθος των κανόνων που εφαρμόστηκαν για την κατασκευή της w. Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 1
Βάση της Επαγωγής: Αν n = 1, τότε χρησιμοποιήθηκε μόνο ένας κανόνας. Ο κανόνας αυτός πρέπει να είναι ο πρώτος κανόνας και η λέξη πρέπει να είναι η ε. Αφού η λέξη έχει μηδέν και μηδέν, το ζητούμενο έπεται. Επαγωγική Υπόθεση: Ας υποθέσουμε ότι οποιαδήποτε λέξη έχει παραχθεί με την εφαρμογή κανόνων για λιγότερες από m φορές περιέχει ίσο αριθμό από και. Επαγωγικό Βήμα Πρέπει να δείξουμε ότι αν μια λέξη έχει παραχθεί με την εφαρμογή κανόνων m φορές τότε περιέχει ίσο αριθμό από και. Από την υπόθεση της επαγωγής, μετά από την εφαρμογή μέχρι m κανόνων όποια λέξη w και αν προκύψει περιέχει ίσο αριθμό από και. Ας θεωρήσουμε την τελευταία εφαρμογή κανόνα κατά την κατασκευή της λέξης w. Υπάρχουν δύο περιπτώσεις: 1. Έστω ότι χρησιμοποιήθηκε ο κανόνας (2). Επομένως, η λέξη που θα παραχθεί θα είναι είτε η u είτε η u όπου η u έχει παραχθεί με τη χρήση λιγότερων από m κανόνων. Από την υπόθεση της επαγωγής η u περιέχει ίσο αριθμό από και, και επομένως είναι φανερό ότι και η παραχθείσα λέξη περιέχει ίσο αριθμό από και και το ζητούμενο έπεται. 2. Έστω ότι χρησιμοποιήθηκε ο κανόνας (3). Επομένως, η λέξη που θα παραχθεί θα είναι η uv όπου οι λέξεις u και v έχουν παραχθεί με τη χρήση λιγότερων των m κανόνων. Από την υπόθεση της επαγωγής η u περιέχει ίσο αριθμό από και, και επομένως είναι φανερό ότι και η παραχθείσα λέξη περιέχει ίσο αριθμό από και και το ζητούμενο έπεται. (β) Έστω μια λέξη w = w 1w 2 w n η οποία περιέχει ίσο αριθμό από και. Θέλουμε να δείξουμε ότι η λέξη ανήκει στο σύνολο L, δηλαδή, μπορεί να παραχθεί χρησιμοποιώντας τους τρεις κανόνες κατασκευής στοιχείων της L. Η απόδειξη θα γίνει με επαγωγή στο μήκος της λέξης, το n. Βάση της Επαγωγής 1: Αν n = 0, τότε w=ε. Από τον κανόνα (1), η λέξη ε ανήκει στη γλώσσα και το ζητούμενο έπεται. Επαγωγική Υπόθεση: Ας υποθέσουμε ότι κάθε λέξη η οποία περιέχει ίσο αριθμό από και με μήκος <m ανήκει στο σύνολο L. Επαγωγικό Βήμα Πρέπει να δείξουμε ότι οποιαδήποτε λέξη με μήκος ίσο με m ανήκει στο σύνολο L. Έστω w = w 1w 2 w m. Διακρίνουμε τέσσερεις περιπτώσεις: 1. Η w έχει τη μορφή w = w 2 w m 1. Από την υπόθεση της επαγωγής, και αφού η λέξη w 2 w m 1 περιέχει επίσης ίσο αριθμό από και, ισχύει ότι w 2 w m 1 L. Επιπρόσθετα, από τον κανόνα (2), και για v = w 2 w m 1, συμπεραίνουμε ότι w = w 2 w m 1 ανήκει επίσης στο L. Επομένως, το αποτέλεσμα ισχύει για τη συγκεκριμένη περίπτωση. 2. Η w έχει τη μορφή w = w 2 w m 1. Από την υπόθεση της επαγωγής, και αφού η λέξη w 2 w m 1 περιέχει επίσης ίσο αριθμό από και, ισχύει ότι w 2 w m 1 L. Επιπρόσθετα, από τον κανόνα (2), και για v = w 2 w m 1, συμπεραίνουμε ότι w = w 2 w m 1 ανήκει επίσης στο L. Επομένως, το αποτέλεσμα ισχύει για τη συγκεκριμένη περίπτωση. 3. Η w έχει τη μορφή w = w 2 w m 1. Παρατηρούμε ότι αφού η w έχει ίσο αριθμό από και, θα πρέπει να υπάρχουν λέξεις u και v τέτοια ώστε w = vu, όπου αμφότερες οι λέξεις v και u έχουν ίσο αριθμό από και (γιατί;). Τότε, από την υπόθεση της επαγωγής, πρέπει v L και u L και από τον κανόνα (3), Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 2
συμπεραίνουμε ότι w = vu L. Επομένως το αποτέλεσμα ισχύει για τη συγκεκριμένη περίπτωση. 4. Η w έχει τη μορφή w = w 2 w m 1. Παρατηρούμε ότι αφού η w έχει ίσο αριθμό από και, θα πρέπει να υπάρχουν λέξεις u και v τέτοια ώστε w = vu, όπου αμφότερες οι λέξεις v και u έχουν ίσο αριθμό από και (γιατί;). Τότε, από την υπόθεση της επαγωγής, πρέπει v L και u L και από τον κανόνα (3), συμπεραίνουμε ότι w = vu L. Επομένως το αποτέλεσμα ισχύει για τη συγκεκριμένη περίπτωση. Αυτό ολοκληρώνει την απόδειξη. Άσκηση 3 Για κάθε ένα από τα πιο κάτω πεπερασμένα αυτόματα να παρουσιάσετε το αυτόματο γραφικά μέσω του σχετικού συστήματος μεταβάσεων και να υπολογίσετε τη γλώσσα που αναγνωρίζει: (α) Αυτόματο Α 1 = (Q, Σ, δ, q 0, F), όπου Q = {q 0, q 1, q 2, q 3, q 4, q 5} Σ = {, } F = { q 2 } δ όπως ορίζεται στον πίνακα που ακολουθεί: δ q 0 q 1 q 3 q 1 q 2 q 4 q 2 q 2 q 5 q 3 q 4 q 0 q 4 q 5 q 1 q 5 q 5 q 2 q 0 q 1 q 2 q 3 q 4 ; q 5 Γλώσσα του αυτόματου: όλες οι λέξεις που περιέχουν τουλάχιστον 2 και άρτιο αριθμό από. (β) Αυτόματο Α 2 = (Q, Σ, δ, q 0, F), όπου Q = { q 0, q 1, q 2, q 3 } Σ = {, } Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 3
F = { q 1, q 2 } δ όπως ορίζεται στον πίνακα που ακολουθεί: δ q 0 q 1 q 2 q 1 q 0 q 3 q 2 q 3 q 0 q 3 q 2 q 1 q 0 q 1 q 2 ; q 3 Γλώσσα του αυτόματου: όλες οι λέξεις που έχουν περιττό μήκος. Άσκηση 4 Για κάθε μια από τις πιο κάτω γλώσσες, να κατασκευάσετε ντετερμινιστικό πεπερασμένο αυτόματο (DFA) που να την αναγνωρίζει. Σε κάθε περίπτωση, να δείχνετε (1) τον τυπικό ορισμό του αυτομάτου και (2) το διάγραμμα καταστάσεων (α) { w {,} * η w περιέχει ως υπολέξη τη λέξη ακριβώς μία φορά } 1 2 3 4 5 6 7, Τυπικός ορισμός: (Q, Σ, δ, 1, F), όπου Q = {1, 2, 3, 4, 5, 6, 7} Σ = {, } F = {4, 5, 6} δ όπως ορίζεται στον πίνακα που ακολουθεί: Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 4
δ 1 1 2 2 3 2 3 1 4 4 5 4 5 6 7 6 6 4 7 7 7 (β) { w {,} * η w περιέχει ως υπολέξη τη λέξη και δεν τελειώνει σε } (Παράδειγμα: η λέξη ανήκει στη γλώσσα αλλά οι λέξεις και όχι.) 1 2 3 4 5 6 7 Τυπικός ορισμός: (Q, Σ, δ, 1, F), όπου Q = {1, 2, 3, 4, 5, 6, 7} Σ = {, } F = {5, 6} δ όπως ορίζεται στον πίνακα που ακολουθεί: δ 1 2 1 2 2 3 3 2 4 4 4 5 5 5 6 6 5 7 7 5 7 Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 5
(γ) {w η w είναι λέξη επί του αλφάβητου {0,1,2,...,9} με άθροισμα ψηφίων πολλαπλάσιο του 3} (Παράδειγμα: οι λέξεις 213, 4230 ανήκουν στη γλώσσα αλλά η λέξη 4225 όχι.) 0,3,6,9 q 1,4,7 0,3,6,9 0,3,6,9 q 0 1,4,7 2,5,8 2,5,8 2,5,8 1,4,7 q 1 1,4,7 2,5,8 q 2 0,3,6,9 Τυπικός ορισμός: (Q, Σ, δ, q, F), όπου Q = {q, q 0, q 1, q 2} Σ = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} F = { q } δ όπως ορίζεται στον πίνακα που ακολουθεί: δ 0,3,6,9 1,4,7 2,5,8 q q 0 q 1 q 2 q 0 q 0 q 1 q 2 q 1 q 1 q 2 q 0 q 2 q 2 q 0 q 1 (δ) {w η w είναι λέξη επί του αλφάβητου {,} η οποία περιέχει τη συμβολοσειρά για άρτιο αριθμό φορών και τη συμβολοσειρά για περιττό αριθμό φορών} (Παράδειγμα: οι λέξεις,, ανήκουν στη γλώσσα αλλά οι λέξεις και όχι.) Θα κτίσουμε δύο αυτόματα, το ένα δέχεται όλους τις λέξεις που περιέχουν τη συμβολοσειρά για άρτιο αριθμό φορών και το δεύτερο θα δέχεται τη συμβολοσειρά για περιττό αριθμό φορών. Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 6
1 2 3 4 5 5 6 7 8 9 Το ζητούμενο αυτόματο μπορεί να προκύψει μέσω του συνδυασμού των δύο πιο πάνω αυτομάτων, χρησιμοποιώντας την κατασκευή της Άσκησης 3, Φροντιστήριο 2. Το βήμα αυτό παραλείπεται. Άσκηση 5 Έστω Β n = { k m k πολλαπλάσιο του n και m πολλαπλάσιο του 2 }. Να δείξετε ότι η γλώσσα Β n είναι κανονική για κάθε n 1. Για να δείξουμε ότι η γλώσσα Β n είναι κανονική για κάθε n 1, θα δείξουμε ότι υπάρχει DFA που να την αναγνωρίζει. Η απόδειξη είναι κατασκευαστική. Έστω n αυθαίρετος ακέραιος, n 1. Κατασκευάζουμε DFA M=(Q, Σ, δ, q1, F) ως εξής: Q = {s, q 1,, q n, r 1,,r 2} Σ = {,} δ, όπως φαίνεται στο σχεδιάγραμμα καταστάσεων που ακολουθεί F = {q 1, r 2} Στο αυτόματο αυτό, μπορούμε αρχικά να κινηθούμε κατά μήκος του κύκλου q 1 q 2 q n q 1 για μηδέν οι περισσότερες φορές, και να αποδεχθούμε μετά από k εμφανίσεις του όπου k κάποιο πολλαπλάσιο του n. Εναλλακτικά, αντί να αποδεχθούμε μπορούμε να εκτελέσουμε και να κινηθούμε κατά μήκος του κύκλου r 1 r 2 r 1 και να αποδεχθούμε μετά από άρτιο αριθμό από. Αν από κάποια κατάσταση q i, i > 1, εμφανιστεί το, ή από την κατάσταση r 1 εμφανιστεί το, τότε το αυτόματο καταφεύγει στην κατάσταση s όπου θα εγκλωβιστεί και τελικά θα απορρίψει τη λέξη. Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 7
Το αυτόματο M φαίνεται σχηματικά πιο κάτω. Αυτό ολοκληρώνει την απόδειξη. q 1 q 2 q 3 q n-1 q n r 1 r 2 s, Λύσεις Σειράς Προβλημάτων 1 Εαρινό Εξάμηνο 2017 Σελίδα 8