Σειρά Προβλημάτων Λύσεις Άσκηση Έστω αλφάβητο Σ και γλώσσες Λ, Λ επί του αλφάβητου αυτού. Να διερευνήσετε κατά πόσο ισχύει κάθε μια από τις πιο κάτω σχέσεις. Σε περίπτωση που μια σχέση ισχύει να το αποδείξετε, διαφορετικά να δώσετε αντιπαράδειγμα. (α) Αν Λ Λ τότε Λ Λ (β) Λ Λ (Λ Λ ) (γ) Λ Λ = (Λ Λ ) (α) Η σχέση ισχύει και ακολουθεί η σχετική απόδειξη. Έστω ότι Λ Λ. Πρέπει να δείξουμε ότι για οποιαδήποτε λέξη w ισχύει ότι αν w Λ τότε w Λ Αφού w Λ, τότε w = w w w n όπου w i Λ για κάθε i n. Από την υπόθεση Λ Λ συμπεραίνουμε ότι wi Λ για κάθε i n και επομένως w Λ και το ζητούμενο έπεται. (β) Πρέπει να δείξουμε ότι για οποιαδήποτε λέξη w ισχύει ότι αν w Λ Λ τότε w (Λ Λ ) Έστω ότι w Λ Λ. Θεωρούμε τις δύο περιπτώσεις: Αν w Λ, τότε w = w w w n όπου w i Λ για κάθε i n. Προφανώς, επίσης ισχύει ότι w i Λ Λ γεγονός που οδηγεί στο συμπέρασμα ότι w (Λ Λ ) και το ζητούμενο έπεται. Αν w Λ, τότε w = w w w n όπου w i Λ για κάθε i n. Προφανώς, επίσης ισχύει ότι w i Λ Λ γεγονός που οδηγεί στο συμπέρασμα ότι w (Λ Λ ) και το ζητούμενο έπεται. (γ) H σχέση αυτή δεν ισχύει και το επιδεικνύουμε με σχετικό αντιπαράδειγμα. Έστω Λ = {} και Λ = {}. Τότε Λ Λ = {} {} και (Λ Λ ) = {,} Στην περίπτωση αυτή η λέξη ανήκει στη γλώσσα (Λ Λ ) αλλά δεν ανήκει στη γλώσσα Λ Λ και επομένως τα δύο σύνολα δεν είναι ίσα. Άσκηση Θεωρήστε τις λέξεις n και n επί του αλφαβήτου {0,}, n 0, οι οποίες παράγονται από τους πιο κάτω κανόνες: 0 = 0 0 = n= n n n= n n (α) Να αποδείξετε ότι n = n = n, για κάθε n 0. (β) Να αποδείξετε ότι, για κάθε n 0, η λέξη n λαμβάνεται από τη λέξη n αν αντικαταστήσουμε κάθε εμφάνιση του 0 με και αντίστροφα. Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα
(α) Η απόδειξη θα γίνει με επαγωγή πάνω στο n, το στο μήκος των λέξεων n και n. Βάση της Επαγωγής: Αν n =, εξ ορισμού 0 = 0 και 0 = και το ζητούμενο έπεται. Επαγωγική Υπόθεση: Ας υποθέσουμε ότι k = k = k, για κάποιο k. Επαγωγικό Βήμα: Πρέπει να δείξουμε ότι k+ = k+ = k+. Από τον ορισμό των δύο λέξεων έχουμε ότι k+ = k k = k + k και k+ = k k = k + k Από την υπόθεση της επαγωγής, συμπεραίνουμε ότι k+ = k + k = k+ και k+ = k + k = k+ και το ζητούμενο έπεται. (β) Και πάλι, η απόδειξη θα γίνει με επαγωγή πάνω στο n, το στο μήκος των λέξεων n και n. Βάση της Επαγωγής: Αν n =, αφού 0 = 0 και 0 =, η λέξη 0 λαμβάνεται από τη λέξη ο αν αντικαταστήσουμε κάθε εμφάνιση του 0 με και αντίστροφα, και το ζητούμενο έπεται. Επαγωγική Υπόθεση: Ας υποθέσουμε ότι για κάποιο k η λέξη k λαμβάνεται από τη λέξη k αν αντικαταστήσουμε κάθε εμφάνιση του 0 με και αντίστροφα. Επαγωγικό Βήμα: Πρέπει να δείξουμε ότι η λέξη k+ λαμβάνεται από τη λέξη k+ αν αντικαταστήσουμε κάθε εμφάνιση του 0 με και αντίστροφα. Από τον ορισμό των δύο λέξεων έχουμε ότι k+ = k k και k+ = k k Από την υπόθεση της επαγωγής, γνωρίζουμε ότι η ότι η λέξη k λαμβάνεται από τη λέξη k αν αντικαταστήσουμε κάθε εμφάνιση του 0 με και αντίστροφα. Επομένως αν αντικαταστήσουμε κάθε εμφάνιση του 0 με στη λέξη k+ = k k θα πάρουμε τη λέξη k k η οποία δεν είναι άλλη από την k+. Επομένως, το ζητούμενο έπεται. Άσκηση Για κάθε ένα από τα πιο κάτω πεπερασμένα αυτόματα να παρουσιάσετε το αυτόματο γραφικά μέσω του σχετικού συστήματος μεταβάσεων και να υπολογίσετε τη γλώσσα που αναγνωρίζει: (α) Αυτόματο Α = (Q, Σ, δ, q, F), όπου Q = {q, q, q, q } F = { q } q q q q q q q q q q q q Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα
, q q q q ; Γλώσσα του αυτόματου: όλες οι λέξεις που ξεκινούν με και δεν περιέχουν περισσότερα από συνεχόμενα και. (β) Αυτόματο Α = (Q, Σ, δ, q 0, F), όπου Q = { q 0, q, q, q, q, q 5 } Σ = {, } F = { q 5 } q 0 q q q q q q q q q q q 5 q q 5 q q 5 q 5 q 5 q 0 q q q q; q 5, Γλώσσα του αυτόματου: όλες οι λέξεις που περιέχουν τουλάχιστον μία από τις ακολουθίες και. Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα
Άσκηση Να δείξετε ότι οι πιο κάτω γλώσσες είναι κανονικές παρουσιάζοντας για κάθε μια από αυτές ντετερμινιστικό πεπερασμένο αυτόματο (DFA) που να την αναγνωρίζει. Σε κάθε περίπτωση, να δείχνετε () τον τυπικό ορισμό του αυτομάτου και () το διάγραμμα καταστάσεων. (α) { w {,} η w δεν περιέχει δύο συνεχόμενες εμφανίσεις του }, Τυπικός ορισμός: (Q, Σ, δ,, F), όπου Q = {,, } F = {, } (β) { w {,} η w δεν περιέχει στην πρώτη θέση, δεν περιέχει στη δεύτερη θέση και δεν περιέχει στην τρίτη θέση., 5, Τυπικός ορισμός: (Q, Σ, δ,, F), όπου Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα
Q = {,,,, 5} F = {,,, } 5 5 5 5 5 5 (γ) { w {,} η w περιέχει τη λέξη το πολύ μια φορά και την λέξη ακριβώς μία φορά } 0 5, 7 8 9 6 Τυπικός ορισμός: (Q, Σ, δ, 0, F), όπου Q = {0,,,,, 5, 6, 7, 8, 9} F = { 5, 6, 8, 9 } Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα 5
0 7 9 5 5 6 7 6 8 5 7 7 7 8 7 9 9 8 7 (δ) { w {,} w mod = και w mod = } 5 6 7 8 9 0 Τυπικός ορισμός: (Q, Σ, δ,, F), όπου Q = {,,,, 5, 6, 7, 8, 9, 0,, }, Σ = {, }, F = {} και δ όπως ορίζεται στον πίνακα που ακολουθεί: 5 6 7 8 5 9 6 6 0 7 7 8 8 5 9 0 0 9 Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα 6
Άσκηση 5 Έστω κανονική γλώσσα L επί κάποιου αλφάβητου Σ. Να αποδείξετε ότι η πιο κάτω γλώσσα είναι επίσης κανονική. Πρόθημα(L) = {w wx L, x Σ } Για να δείξουμε ότι η γλώσσα Πρόθημα(L) είναι κανονική θα δείξουμε ότι υπάρχει DFA που την αναγνωρίζει. Η απόδειξη είναι κατασκευαστική. Έστω D = (Q, Σ, δ, q 0, F) ντετερμινιστικό αυτόματο που αναγνωρίζει τη γλώσσα L. Κατασκευάζουμε DFA M=(Q, Σ, δ, q 0, F ) το οποίο έχει την ίδια δομή (ίδιες καταστάσεις Q, αρχική κατάσταση q 0 και μεταβάσεις δ) με το αρχικό αυτόματο. Το σημείο στο οποίο διαφέρει το καινούριο αυτόματο είναι οι καταστάσεις αποδοχής Q όπου ορίζουμε: F = {s Q υπάρχει μονοπάτι από την s που καταλήγει σε κατάσταση t F } Δηλαδή, στο αυτόματο Μ κάθε κατάσταση η οποία μπορεί να οδηγηθεί σε τελική κατάσταση του αυτόματου D είναι τελική. Ας υποθέσουμε ότι το αυτόματο Μ αποδέχεται τη λέξη w = n. Τότε υπάρχει μονοπάτι που ξεκινά από την αρχική κατάσταση του αυτομάτου και καταλήγει σε κάποια τελική κατάσταση n: q 0 q q n. Αφού q n Q υπάρχει λέξη m και μονοπάτι τέτοιο ώστε q n q n+ q n+m όπου q n+m F. Συνεπώς η λέξη n m ανήκει στη γλώσσα L. Αυτό μας οδηγεί στο συμπέρασμα ότι κάθε λέξη του αυτόματου M αποτελεί πρόθεμα κάποιας λέξης του L και επομένως L(M) Πρόθημα(L). Για να αποδείξουμε ότι επίσης Πρόθημα(L) L(M) ας θεωρήσουμε κάποια λέξη w = n. που ανήκει στο σύνολο Πρόθημα(L). Τότε υπάρχει λέξη n m που ανήκει στην L. Επομένως υπάρχει και μονοπάτι q 0 q q n q n+ q n+m όπου q n+m F. Αφού όμως υπάρχει μονοπάτι q n q n+ q n+m προφανώς ισχύει και ότι q n F που μας οδηγεί στo συμπέρασμα ότι η λέξη w ανήκει στη γλώσσα L(M). Αυτό ολοκληρώνει την απόδειξη. Λύσεις Σειράς Προβλημάτων Εαρινό Εξάμηνο 08 Σελίδα 7