Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2)

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

Download "Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2)"

Transcript

1 Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (2) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Κανονικές Εκφράσεις (1.3) Τυπικός Ορισμός Ισοδυναμία με κανονικές γλώσσες Μη Κανονικές Γλώσσες (1.4) Το Λήμμα της Άντλησης ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-1

2 Κανονικές εκφράσεις Οι κανονικές πράξεις μας επιτρέπουν να συντάσσουμε εκφράσεις που αναπαριστούν γλώσσες. Οι εκφράσεις αυτές λέγονται κανονικές. Παράδειγμα: (0 1)0 * Ποια γλώσσα παράγεται; Τα σύμβολα 0 και 1 είναι συντομογραφίες των {0} και {1} Άρα (0 1) = ({0} {1})={0,1} Το 0 * σημαίνει {0} * : η γλώσσα που αποτελείται από όλες τις λέξεις που περιέχουν οποιοδήποτε αριθμό από μηδενικά. Η έκφραση (0 1)0 * είναι συντομογραφία της συναρμογής των δύο γλωσσών Έτσι (0 1)0 * είναι η γλώσσα που περιέχει όλες οι λέξεις που ξεκινούν με 0 ή 1 ακολουθούμενες από οποιοδήποτε πλήθος από 0. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-2

3 Κανονικές εκφράσεις Παρατηρείστε: (0 1) *: όλες οι λέξεις των οποίων τα σύμβολα είναι το 0 και το 1 Σ * : όλες οι λέξεις επί του αλφάβητου Σ Ποια γλώσσα παράγεται από τις πιο κάτω εκφράσεις; Σ * 1 (0Σ * ) (Σ * 1) Σειρά εκτέλεσης (εκτός και αν καθορίζεται από παρενθέσεις) Σώρευση Συναρμογή Ένωση Παράδειγμα: 0Σ * 1 = (0(Σ * )) 1 ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-3

4 Κανονικές Εκφράσεις Ορισμός ΟΡΙΣΜΟΣ Η R είμαι μια κανονική έκφραση αν είναι της μορφής 1. a, όπου a ένα σύμβολο του αλφάβητου Σ, 2. ε, 3., 4. (R 1 R 2 ), όπου R 1 και R 2 δύο κανονικές εκφράσεις, 5. (R 1 R 2 ), όπου R 1 και R 2 δύο κανονικές εκφράσεις, 6. (R 1* ), όπου R 1 μια κανονική έκφραση. Συντομογραφία: R + = RR * ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-4

5 Κανονικές Εκφράσεις Επεξήγηση ορισμού Η R είμαι μια κανονική έκφραση αν είναι της μορφής a, όπου a ένα σύμβολο του αλφάβητου Σ Η γλώσσα {a} ε Η γλώσσα {ε} Η κενή γλώσσα (R 1 R 2 ), όπου R 1 και R 2 δύο κανονικές εκφράσεις {w w R 1 ή w R 2 } (R 1 R 2 ), όπου R 1 και R 2 δύο κανονικές εκφράσεις {xy x R 1 και y R 2 } (R 1* ), όπου R 1 μια κανονική έκφραση {x 1 x 2 x k k 0 και i, x i R 1 } Συντομογραφία: R + = RR * {x 1 x 2 x k k 1 και i, x i R} ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-5

6 Παραδείγματα 0 * 10 * (ΣΣ) * {w η w περιέχει ακριβώς ένα 1} {w η w είναι λέξη άρτιου μήκους} Σ * 010Σ * {w η w περιέχει την υπολέξη 010} 1 * 0 * 01 * {w η w αρχίζει με μηδέν ή περισσότερα 1 που ακολουθούνται με μηδέν ή περισσότερα 0, ή ξεκινάει με ένα 0 που ακολουθείται από μηδέν ή περισσότερα 1} 1 * = * = {ε} ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-6

7 Ισοδυναμία με πεπερασμένα αυτόματα ΘΕΩΡΗΜΑ Μια γλώσσα είναι κανονική αν και μόνο αν υπάρχει κανονική έκφραση που την περιγράφει. Εναλλακτικές διατυπώσεις Μια γλώσσα αναγνωρίζεται από ένα DFA αν και μόνο αν υπάρχει κανονική έκφραση που την περιγράφει. Μια γλώσσα αναγνωρίζεται από ένα ΝFA αν και μόνο αν υπάρχει κανονική έκφραση που την περιγράφει. Απόδειξη με 2 κατευθύνσεις 1. Αν μια γλώσσα περιγράφεται από κάποια κανονική έκφραση, τότε είναι κανονική. Για κάθε κανονική έκφραση υπάρχει κάποιο NFA που την αναγνωρίζει. 2. Αν μια γλώσσα είναι κανονική τότε υπάρχει κανονική έκφραση που την περιγράφει. Κάθε DFA μπορεί να μετατραπεί σε κανονική έκφραση ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-7

8 Κανονική Έκφραση Κανονική Γλώσσα Στόχος: Να κατασκευάσουμε μηχανισμό για μετατροπή κάθε κανονικής έκφρασης σε NFA. Έστω Α μια γλώσσα που περιγράφεται από μια έκφραση R Aν μπορούμε να μετατρέψουμε την R σε ένα NFA που να αναγνωρίζει την Α, τότε η Α είναι κανονική. Θα δείξουμε ότι η μετατροπή αυτή είναι εφικτή θεωρώντας όλες τις δυνατές μορφές που μπορεί να έχει η R: ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-8

9 Απόδειξη (1) Αν R = a, για κάποιο a στο αλφάβητο Σ, έχουμε L(R) ={a}και κατασκευάζουμε το πιο κάτω NFA που την αναγνωρίζει: a q 1 q 2 Αν R = ε, έχουμε L(R) ={ε} και κατασκευάζουμε το πιο κάτω NFA που την αναγνωρίζει: Αν R =, έχουμε L(R) = και κατασκευάζουμε το πιο κάτω NFA που την αναγνωρίζει: ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-9

10 Απόδειξη (2) Ένωση: Αν R = R 1 R 2 Αφού φτιάξουμε DFA που αναγνωρίζουν τις L(R 1 ) και L(R 2 ), χρησιμοποιούμε την κατασκευή της κλειστότητας ως προς την ένωση για να φτιάξουμε αυτόματο που αποδέχεται την L(R). Συναρμογή: Αν R = R 1 R 2 Αφού φτιάξουμε DFA που αναγνωρίζουν τις L(R 1 ) και L(R 2 ), χρησιμοποιούμε την κατασκευή της κλειστότητας ως προς τη συναρμογή για να φτιάξουμε αυτόματο που αποδέχεται την L(R). Σώρευση: Αν R = R 1 * Αφού φτιάξουμε DFA που αναγνωρίζει την L(R 1 ), χρησιμοποιούμε την κατασκευή της κλειστότητας ως προς τη σώρευση για να φτιάξουμε αυτόματο που αποδέχεται την L(R). ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-10

11 Άσκηση Να μετατρέψετε τις πιο κάτω κανονικές εκφράσεις σε NFA. (ab a)* (a b)*aba ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-11

12 Κανονική Γλώσσα Κανονική Έκφραση Στόχος: Να κατασκευάσουμε μηχανισμό για μετατροπή κάθε κανονικής γλώσσας σε κανονική έκφραση. Αφού η γλώσσα είναι κανονική τότε υπάρχει ένα DFA που την αναγνωρίζει Πρέπει να περιγράψουμε μια διαδικασία που μετατρέπει DFA σε ισοδύναμες κανονικές εκφράσεις Διαδικασία: Μετατροπή από DFA σε γενικευμένο μη ντετερμινιστικό πεπερασμένο αυτόματο, GNFA (Generalized, nondeterministic finite automaton), και από GNFA σε κανονική έκφραση. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-12

13 Γενικευμένο NFA (GNFA) Σε ένα GNFA τα βέλη μετάβασης επιγράφονται με κανονικές εκφράσεις και όχι μόνο με σύμβολα του Σ ε. Παράδειγμα: aa ab * q 1 ab ba q 0 a * (aa) * q 3 b * b ab q 2 ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-13

14 Μορφή GNFA Η εναρκτήρια κατάσταση έχει βέλη προς όλες τις καταστάσεις δεν έχει εισερχόμενο βέλος. Η κατάσταση αποδοχής είναι μοναδική και διάφορη από την αρχική έχει εισερχόμενα βέλη από όλες τις υπόλοιπες καταστάσεις δεν έχει κανένα εξερχόμενο βέλος Κάθε κατάσταση εκτός από την εναρκτήρια και την τελική έχει εξερχόμενα βέλη προς όλες τις άλλες καταστάσεις και προς τον εαυτό της. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-14

15 Βήμα 1: Μετατροπή DFA σε GNFA (1) Προσθέτουμε μια νέα αρχική κατάσταση με βέλος ε προς την παλιά αρχική Προσθέτουμε μια νέα κατάσταση αποδοχής με εισερχόμενα βέλη ε από όλες τις παλιές καταστάσεις αποδοχής Βήμα 2: Αν κάποιο βέλος έχει περισσότερα από ένα σύμβολα τότε αντικαθιστούμε τα σύμβολα με την ένωση των συμβόλων Βήμα 3: Αν από μια κατάσταση σε κάποια άλλη δεν υπάρχει κανένα βέλος τότε προσθέτουμε ένα με επιγραφή ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-15

16 Άσκηση Να μετατρέψετε τα πιο κάτω DFA σε GNFA. a a b b q 1 q 2 q 1 q 2 a b b a q 3 a,b ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-16

17 Μετατροπή GNFA σε Κανονική Έκφραση Στόχος: Να μετατρέψουμε το GNFA που κατασκευάσαμε για το αρχικό DFA σε GNFA με δύο καταστάσεις. Αν το GNFA έχει 2 καταστάσεις (αρχική και τελική) τότε η κανονική έκφραση είναι η επιγραφή του μοναδικού βέλους από την αρχική στην κατάσταση αποδοχής Αν το GNFA έχει k >2 καταστάσεις τότε αφαιρούμε μια κατάσταση και αλλάζουμε την επιγραφή των βελών για να πάρουμε ένα ισοδύναμο GNFA k-1 καταστάσεων. Επαναλαμβάνουμε μέχρι k=2. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-17

18 Αφαίρεση κατάστασης Παράδειγμα Πως μπορούμε να αφαιρέσουμε την κορυφή q 3 από το αυτόματο που ακολουθεί; R 4 q 1 q 2 R 1 q 3 R 3 R 2 Θα πρέπει να συλλάβουμε το μονοπάτι q 1 q 3 q 2 μέσω του q 1 q 2 επεκτείνοντας κατάλληλα την κανονική έκφραση του μονοπατιού που θα παραμείνει. q 1 q 2 (R 1 )(R 2 ) * (R 3 ) R 4 ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-18

19 Τυπικός Ορισμός GNFA ΟΡΙΣΜΟΣ Γενικευμένο μη ντετερμινιστικό πεπερασμένο αυτόματο είναι μια πεντάδα, Σ, δ, q έναρξης, q αποδοχής, όπου 1. είναι το πεπερασμένο σύνολο καταστάσεων, 2. Σ είναι το αλφάβητο εισόδου, 3. : q αποδοχής q έναρξης, είναι η συνάρτηση μεταβάσεων, 4. q έναρξης είναι η εναρκτήρια κατάσταση, και 5. q αποδοχής είναι η κατάσταση αποδοχή. Συμβολισμός: = το σύνολο των κανονικών εκφράσεων ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-19

20 Αλγόριθμος μετατροπής ΜΕΤΑΤΡΟΠΗ(G) 1. Έστω G=, Σ, δ, q έναρξης, q αποδοχής με Q = k. 2. Aν k = 2 Επέστρεψε R: η έκφραση στο βέλος από την αρχική στην τελική κατάσταση 3. Aν k > 2 Επέλεξε οποιαδήποτε κατάσταση q * Q {q έναρξης, q αποδοχής } Κατασκευάζουμε το G =,Σ,δ,q έναρξης, q αποδοχής με μία λιγότερη κατάσταση ως εξής: Q = Q {q * } Για κάθε q i Q {q αποδοχής }, q j Q {q έναρξης }, όπου ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-20

21 Άσκηση Να υπολογίσετε τις κανονικές εκφράσεις που αντιστοιχούν στα πιο κάτω αυτόματα. a a b b q 1 q 2 q 1 q 2 a b b a q 3 a,b ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-21

22 Κανονικές και Μη Κανονικές Γλώσσες Μία γλώσσα είναι κανονική αν και μόνο αν Υπάρχει DFA που να την αναγνωρίζει Υπάρχει ΝFA που να την αναγνωρίζει Υπάρχει κανονική έκφραση που να την περιγράφει Μία γλώσσα είναι πεπερασμένη αν περιέχει πεπερασμένο αριθμό λέξεων. Είναι όλες οι πεπερασμένες γλώσσες κανονικές; ΝΑΙ! Δημιουργούμε ένα αυτόματο με ένα «μονοπάτι» για κάθε λέξη της γλώσσας. Παράδειγμα: Η γλώσσα Λ = {a, ab, cd, cb} a ε b d c b ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-22

23 Κη Κανονικές Γλώσσες Είναι όλες οι γλώσσες κανονικές; Όχι. Για παράδειγμα η γλώσσα Β ={0 n 1 n n 0} δεν είναι κανονική. Δεν υπάρχει κανένα πεπερασμένο αυτόματο που να την αναγνωρίζει. Γιατί; Για να αναγνωρίσει τις λέξεις της ένα αυτόματο πρέπει να θυμάται πόσα 0 έχει διαβάσει. Όμως Το πλήθος των 0 δεν είναι φραγμένο απεριόριστο πλήθος περιπτώσεων/καταστάσεων. Ασθενές επιχείρημα. Η πιο κάτω γλώσσα είναι κανονική D={w η w περιέχει τις υπολέξεις 01 και 10 τις ίδιες φορές} Αν και φαινομενικά πρέπει να μετρούμε υπολέξεις που δυνατόν να εμφανιστούν για μη πεπερασμένο αριθμό φορών υπάρχει NFA (DFA) που αναγνωρίζει τη γλώσσα. (άσκηση) ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-23

24 Λήμμα της Άντλησης Πως αποδεικνύουμε ότι μια γλώσσα ΔΕΝ είναι κανονική; ΛΗΜΜΑ ΑΝΤΛΗΣΗΣ Λήμμα Άντλησης: Όλες οι λέξεις μιας κανονικής γλώσσας που έχουν μήκος μεγαλύτερο ή ίσο κάποιας συγκεκριμένης τιμής, η οποία ονομάζεται μήκος άντλησης, επιδέχονται μια διαδικασία «άντλησης». Κάθε τέτοια λέξη περιλαμβάνει ένα τμήμα που μπορεί να επαναληφθεί και η προκύπτουσα λέξη ανήκει στη γλώσσα. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-24

25 Λήμμα της Άντλησης Λήμμα της Άντλησης Για κάθε κανονική γλώσσα Α, υπάρχει αριθμός p (το μήκος άντλησης αυτής) τέτοιος ώστε κάθε λέξη s της Α με μήκος μεγαλύτερο ή ίσο του p να μπορεί να χωριστεί σε τρία τμήματα, s = xyz, που να ικανοποιούν τις εξής συνθήκες: 1. Για κάθε i 0, xy i z A 2. y > 0, και 3. xy p. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-25

26 Αποδεικτική ιδέα Έστω Μ =, Σ, δ,, ένα ντετερμινιστικό αυτόματο που αναγνωρίζει την Α Ορίζουμε μήκος άντλησης p = αριθμός καταστάσεων του Μ Θέλουμε να δείξουμε: Κάθε λέξη της Α με μήκος μεγαλύτερο ή ίσο του p μπορεί να χωριστεί σε τρία μέρη xyz που να ικανοποιούν τις συνθήκες του λήμματος Τι κι αν όλες οι λέξεις έχουν μήκος μικρότερο του p; Το λήμμα αληθεύει εν κενώ. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-26

27 Αποδεικτική Ιδέα (1) Υποθέτουμε ότι έχουμε μια λέξη w A τ.ω. w = n και n p Αφού w A τότε το Μ αποδέχεται την λέξη Έστω q 13 η κατάσταση αποδοχής που φτάνει η Μ με το τέλος της w Άρα υπάρχει μια ακολουθία n+1 καταστάσεων q 1 q 3 q 20 q 9 q 13 Αφού έχουμε p n καταστάσεις στο Μ Αρχή του Περιστερώνα: Υπάρχει μια κατάσταση που επαναλαμβάνεται ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-27

28 Αποδεικτική Ιδέα (2) Έστω ότι η κατάσταση που επαναλαμβάνεται είναι η q 9 Μπορούμε να χωρίσουμε την w σε τρία μέρη x: το τμήμα της w πριν την πρώτη εμφάνιση της q 9 y: το τμήμα ανάμεσα στις δύο εμφανίσεις του q 9 z: η υπόλοιπη λέξη Μ y x q 9 z q 13 q 1 ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-28

29 Αποδεικτική Ιδέα (3) Μ y x q 9 z q 13 q 1 1. για κάθε i 0, xy i z A Π.χ.: To M αποδέχεται την xyyz; 2. y >0 Ναι: το y είναι το τμήμα της λέξης μεταξύ δύο διαφορετικών εμφανίσεων της q 9 3. xy p Toq 9 είναι η πρώτη επανάληψη Οι πρώτες p+1 καταστάσεις περιέχουν μια επανάληψη ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-29

30 Απόδειξη Μη Κανονικότητας Δοθείσας μιας γλώσσας Β πως δείχνουμε ότι δεν είναι κανονική; Βήμα 1: Υποθέτουμε (για να φτάσουμε σε αντίφαση) ότι η Β είναι κανονική Βήμα 2: Θεωρούμε ότι η Β περιέχει λέξεις μήκους μεγαλύτερο ή ίσο με κάποιο p (μήκος άντλησης) Βήμα 3: Βρίσκουμε μια λέξη w της Β η οποία δεν επιδέχεται άντληση Βήμα 4: Μελετούμε όλες τις δυνατές διαιρέσεις της w στα τμήματα x, y, z, και δείχνουμε ότι η υπάρχει τιμή για το i τέτοια ώστε xy i z B ΑΤΟΠΟ ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-30

31 Παράδειγμα 1 Έστω Β ={0 k 1 k k 0} Βήμα 1: Υποθέτουμε ότι Β είναι κανονική Βήμα 2: Έστω p το μήκος της άντλησης Βήμα 3: Επιλέγουμε την λέξη w = 0 p 1 p Από το λήμμα της άντλησης w = xyz τ.ω. για i 0, xy i z B ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-31

32 Βήμα 4: 1. Η λέξη y έχει μόνο 0 Παράδειγμα 1 Τότε η λέξη xyyz έχει περισσότερα 0 από 1 άτοπο 2. Η λέξη y έχει μόνο 1 Τότε η λέξη xyyz έχει περισσότερα 1 από 0 άτοπο 3. Η λέξη y έχει και 0 και 1 Τότε η λέξη xyyz πιθανόν να έχει το ίδιο πλήθος 0 και 1 αλλά αυτά δεν βρίσκονται στη σωστή σειρά άτοπο Όλες οι περιπτώσεις μας οδηγούν σε άτοπο Δεν μπορούμε να εφαρμόσουμε άντληση στη λέξη 0 p 1 p Η Β δεν είναι κανονική ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-32

33 Παράδειγμα 2 Έστω C={w η w έχει το ίδιο πλήθος από 0 και 1} Βήμα 1: Υποθέτουμε ότι C είναι κανονική Βήμα 2: Έστω p το μήκος της άντλησης Βήμα 3: Επιλέγουμε την λέξη w = 0 p 1 p Από το λήμμα της άντλησης w = xyz τ.ω. για i 0, xy i z C Φαίνεται ότι η w επιδέχεται άντληση!! x = ε, z = εκαι y = w ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-33

34 Παράδειγμα 2 Βήμα 4: Θα χρειαστούμε τη συνθήκη 3: Η w πρέπει να χωριστεί έτσι ώστε xy p Αφού xy p τότε στο w = xyz =0 p 1 p το y περιέχει μόνο 0 Άρα η λέξη xyyz C => ΑΤΟΠΟ Δεν μπορούμε να εφαρμόσουμε άντληση στη λέξη 0 p 1 p Η C δεν είναι κανονική ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-34

35 Έστω D = {ww w {0,1} * } Παράδειγμα 3 Βήμα 1: Υποθέτουμε ότι η D είναι κανονική Βήμα 2: Έστω p το μήκος της άντλησης Βήμα 3: Επιλέγουμε τη λέξη w =0 p 10 p 1 Από το λήμμα της άντλησης w = xyz τ.ω. για i 0, xy i z D Βήμα 4: Αφού xy p τότε στο w = xyz =0 p 10 p 1 το y περιέχει μόνο 0 Άρα η λέξη xyyz D ΑΤΟΠΟ ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-35

36 Μη Κανονικότητα και το Λήμμα της Άντλησης Λήμμα της Άντλησης Για κάθε κανονική γλώσσα Α, υπάρχει αριθμός p (το μήκος άντλησης αυτής) τέτοιος ώστε κάθε λέξη s της Α με μήκος μεγαλύτερο ή ίσο του p να μπορεί να χωριστεί σε τρία τμήματα, s = xyz, που να ικανοποιούν τις εξής συνθήκες: 1. Για κάθε i 0, xy i z A 2. y > 0, και 3. xy p. Το Λήμμα της Άντλησης διατυπώνει ότι κάθε κανονική γλώσσα έχει κάποια συγκεκριμένη ιδιότητα. Επομένως αν κάποια γλώσσα δεν έχει αυτή την ιδιότητα τότε δεν είναι κανονική. Όμως, αυτό δεν συνεπάγεται ότι κάθε γλώσσα που έχει τη συγκεκριμένη ιδιότητα είναι και κανονική! (Αν Α Β τότε όχι απαραίτητα Β Α) ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-36

37 Μη Κανονικότητα και το Λήμμα της Άντλησης Στην πραγματικότητα υπάρχουν και μη κανονικές γλώσσες που ενώ είναι μη κανονικές ικανοποιούν το Λήμμα της Άντλησης. Παράδειγμα τέτοιας μη κανονικής γλώσσας είναι η Ενώ η γλώσσα αυτή δεν είναι κανονική, μπορούμε να δείξουμε ότι ικανοποιεί την ιδιότητα που αναφέρεται στο Λήμμα της Άντλησης. (δείξτε το!) Μη κανονικότητα της L μπορεί να δειχθεί θεωρώντας τη γλώσσα Αν η L ήταν κανονική, κανονική θα ήταν και η πιο πάνω τομή η οποία όμως μπορούμε να δείξουμε ότι είναι μη κανονική. ΕΠΛ 211 Θεωρία Υπολογισμού και Πολυπλοκότητα 3-37

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 5: Κανονικές Εκφράσεις ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 5: Κανονικές Εκφράσεις Τι θα κάνουμε σήμερα Κλειστότητα Κανονικών Πράξεων (1.2.3) Εισαγωγή στις Κανονικές Εκφράσεις Τυπικός ορισμός της κανονικής

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 6: Μη Κανονικές Γλώσσες ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 6: Μη Κανονικές Γλώσσες Τι θα κάνουμε σήμερα Εισαγωγικά Το Λήμμα της Άντλησης για κανονικές γλώσσες Παραδείγματα 1 Πότε μια γλώσσα δεν είναι κανονική;

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

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

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (1)

Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες (1) Θεωρία Υπολογισμού και Πολυπλοκότητα Κανονικές Γλώσσες () Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Πεπερασμένα Αυτόματα (Κεφάλαιο., Sipser) Ορισμός πεπερασμένων αυτομάτων και ορισμός του

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (3)

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Επανάληψη Μαθήματος

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

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 3: Ντετερμινιστικά Πεπερασμένα Αυτόματα (DFA) ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 3: Ντετερμινιστικά Πεπερασμένα Αυτόματα (DFA) Τι θα κάνουμε σήμερα Εισαγωγή στα Ντετερμινιστικά Πεπερασμένα Αυτόματα 14-Sep-11 Τυπικός Ορισμός Ντετερμινιστικών

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

Σύνοψη Προηγούµενου. Κανονικές Γλώσσες (3) Παραδείγµατα µε Κανονικές Εκφράσεις. Σε αυτό το µάθηµα.

Σύνοψη Προηγούµενου. Κανονικές Γλώσσες (3) Παραδείγµατα µε Κανονικές Εκφράσεις. Σε αυτό το µάθηµα. Σύνοψη Προηγούµενου Κανονικές Γλώσσες (3) Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς (Ντετερµινιστική) Κλειστότητα Κανονικών Γλωσσών ως προς Ενωση. Κατασκευή: DFA

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

Ασκήσεις από παλιές εξετάσεις

Ασκήσεις από παλιές εξετάσεις Άσκηση 2 - Τελική εξέταση 2012 Ασκήσεις από παλιές εξετάσεις (α) [10 μονάδες] Να μετατρέψετε το πιο κάτω NFA σε ένα ισοδύναμο DFA χρησιμοποιώντας την κατασκευή που μελετήσαμε στο μάθημα. a a q 0 a, ε q

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

Κανονικές Γλώσσες. ιδάσκοντες: Φ. Αφράτη,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

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

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 11: Μη Ασυμφραστικές Γλώσσες ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 11: Μη Ασυμφραστικές Γλώσσες Τι θα κάνουμε σήμερα Εισαγωγικά (2.3) Το Λήμμα της Άντλησης για ασυμφραστικές γλώσσες (2.3.1) Παραδείγματα 1 Πότε μια

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητα Ενδιάμεση Εξέταση Ημερομηνία : Παρασκευή, 17 Μαρτίου 2017 Διάρκεια : 9.00 10.30 Διδάσκουσα : Άννα Φιλίππου Ονοματεπώνυμο:

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αυτόματα Στοίβας (2.2) Τυπικός Ορισμός Παραδείγματα Ισοδυναμία με Ασυμφραστικές

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

Ισοδυναμία Αιτ. Και μη Αιτ. Π.Α.

Ισοδυναμία Αιτ. Και μη Αιτ. Π.Α. Ισοδυναμία Αιτ. Και μη Αιτ. Π.Α. Δύο Π.Α. Μ 1 και Μ 2 είναι ισοδύναμα ανν L(M 1 ) = L(M 2 ). Έστω Μ = (Q, Σ, q 0, Δ, F) μη Αιτ. Π.Α. Για κάθε κατάσταση q Q, ορίζουμε ως Ε(q) Q το σύνολο των καταστάσεων

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing (αυθεντικός ορισμός) η οποία να διαγιγνώσκει τη γλώσσα {w 1w 2 w 1 {0,1} * και w 2 = 0 k 1 m όπου k και m

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

Κανονικές Γλώσσες. Κανονικές Γλώσσες. Κανονικές Γλώσσες και Αυτόματα. Κανονικές Γλώσσες και Αυτόματα

Κανονικές Γλώσσες. Κανονικές Γλώσσες. Κανονικές Γλώσσες και Αυτόματα. Κανονικές Γλώσσες και Αυτόματα Κανονικές Γλώσσες Κανονικές Γλώσσες Διδάσκοντες: Φ. Αφράτη, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Κανονική γλώσσα αν παράγεται από κανονική γραμματική. Παραγωγές P (V Σ) Σ * ((V Σ) ε) Παραγωγές μορφής:

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

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

Σειρά Προβλημάτων 1 Λύσεις Σειρά Προβλημάτων Λύσεις Άσκηση Ορίζουμε τη συναρμογή δύο γλωσσών Α και Β ως ΑΒ = { uv u A, v B }. (α) Έστω Α = {α,β,γ} και Β =. Να περιγράψετε τη γλώσσα ΑΒ. (β) Θεωρήστε τις γλώσσες L, M και N. Να δείξετε

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

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

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

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 8 : Αυτόματα NFA - DFA. Αλέξανδρος Τζάλλας

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 8 : Αυτόματα NFA - DFA. Αλέξανδρος Τζάλλας Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Θεωρία Υπολογισμού Ενότητα 8 : Αυτόματα NFA - DFA Αλέξανδρος Τζάλλας 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

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

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

Σειρά Προβλημάτων 3 Λύσεις Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) {0 n 1 n n > 0} {0 n 1 2n n > 0} (β) {w {a,b} * η w ξεκινά και τελειώνει με το ίδιο σύμβολο

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing (αυθεντικός ορισμός) η οποία να διαγιγνώσκει τη γλώσσα { ww w {a,b}* }. (β) Να διατυπώσετε την τυπική περιγραφή

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

Άσκησηη 1. (α) Το αυτόματο. (γ) Να δείξετε όλα aabbb. Λύση. λέξεις. αυτόματο. (β) Τυπικά. μεταβάσεων δ. ορίζεται. (γ) Θα δείξουμε τα.

Άσκησηη 1. (α) Το αυτόματο. (γ) Να δείξετε όλα aabbb. Λύση. λέξεις. αυτόματο. (β) Τυπικά. μεταβάσεων δ. ορίζεται. (γ) Θα δείξουμε τα. ΕΠΛ211: : Θεωρία Υπολογισμού και Πολυπλοκότητα Φροντιστήριο 7 Λύσεις Άσκησηη 1 Θεωρήστε το πιο κάτω αυτόματο στοίβας: (α) Να εξηγήσετε με λόγια ποια γλώσσαα αναγνωρίζεται από τοο αυτόματο. (β) Να δώσετε

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

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

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

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing (αυθεντικός ορισμός) η οποία να διαγιγνώσκει τη γλώσσα { w#z w, z {a,b}* και η z είναι υπολέξη της w}. Συγκεκριμένα,

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2)

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (2) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Αυτόματα Στοίβας (2.2) Τυπικός Ορισμός Παραδείγματα Ισοδυναμία με Ασυμφραστικές

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

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

Φροντιστήριο 7 Λύσεις Άσκηση 1 Θεωρείστε το πιο κάτω αυτόματο στοίβας: Φροντιστήριο 7 Λύσεις (α) Να εξηγήσετε με λόγια ποια γλώσσα αναγνωρίζεται από το αυτόματο. (β) Να δώσετε τον τυπικό ορισμό του αυτομάτου. (γ) Να δείξετε

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητα Ενδιάμεση Εξέταση Ημερομηνία : Κυριακή, 15 Μαρτίου 2015 Διάρκεια : 15.00 17.00 Διδάσκουσα : Άννα Φιλίππου Ονοματεπώνυμο:

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing (αυθεντικός ορισμός) η οποία να διαγιγνώσκει τη γλώσσα {1010 2 10 3 10 n 1 10 n 1 n 1}. (β) Να διατυπώσετε

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

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

Σειρά Προβλημάτων 1 Λύσεις ΕΠΛ: Θεωρία Υπολογισμού και Πολυπλοκότητα Σειρά Προβλημάτων Λύσεις Άσκηση Θεωρείστε τις γλώσσες Α = { n n } και Β = {w η w είναι λέξη επί του αλφαβήτου {,} τ.ώ. w }. (α) Για κάθε μια από τις πιο κάτω γλώσσες

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing που να διαγιγνώσκει τη γλώσσα { a 2n b n c 3n n 2 } : H ζητούμενη μηχανή Turing μπορεί να διατυπωθεί ως την

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

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

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

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

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

Σειρά Προβλημάτων 3 Λύσεις Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { xyw 1w 2 x, y {a, b}, w 1 = a n, w 2 = b 2n, όπου, αν x=y=a, τότε n = 2k, διαφορετικά

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

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

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

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

Αυτόματα και Υπολογιστικά Μοντέλα Automata and Models of Computation

Αυτόματα και Υπολογιστικά Μοντέλα Automata and Models of Computation Αυτόματα και Υπολογιστικά Μοντέλα Automata and Models of Computation Διδάσκων: Στάθης Ζάχος Επιμέλεια Διαφανειών: Μάκης Αρσένης CoReLab ΣΗΜΜΥ - Ε.Μ.Π. Φεβρουάριος 2017 Διδάσκων: Στάθης Ζάχος ( CoReLab

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (1)

Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (1) Θεωρία Υπολογισμού και Πολυπλοκότητα Ασυμφραστικές Γλώσσες (1) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ασυμφραστικές Γραμματικές (2.1) Τυπικός Ορισμός Σχεδιασμός Ασυμφραστικών Γραμματικών

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing που να διαγιγνώσκει την ακόλουθη γλώσσα. { a n b n+2 c n 2 n 2 } Λύση: H ζητούμενη μηχανή Turing μπορεί να

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

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

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

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

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

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

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { a k b m c n k < m ή m > 2n, όπου k,m,n 0 } Μια γραμματική για τη γλώσσα έχει ως εξής:

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { a i b j c k d m i, j, k, m 0 και i + j = k + m } (β) { uxvx rev u,v,x {0,1,2} + και όλα

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { w {(, )} * οι παρενθέσεις στην w είναι ισοζυγισμένες } (β) { a k b m c 2m a k k > 0,

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

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

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

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσhmμy 6η ενότητα: Αυτόματα, τυπικές γλώσσες, γραμματικές Επιμέλεια διαφανειών: Στάθης Ζάχος, Άρης Παγουρτζής http://www.corelab.ece.ntua.gr/courses/introcs

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { xyxy rev x {a, b}, y {a, b} * } (α) Μια γραμματική για τη γλώσσα έχει ως εξής: S as a

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { x x η τιμή της αριθμητικής έκφρασης 10 2n + 10 n + 1, n 1} (β) { a i b j c k d m i, j,

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing (αυθεντικός ορισμός) η οποία να διαγιγνώσκει τη γλώσσα { w w = (ab) 2m b m (ba) m, m 0 } (β) Να διατυπώσετε

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητα Ενδιάμεση Εξέταση Ημερομηνία : Σάββατο, 15 Μαρτίου 2014 Διάρκεια : 9.30 11.30 Διδάσκουσα : Άννα Φιλίππου Ονοματεπώνυμο:

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 10: Αυτόματα Στοίβας II ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 10: Αυτόματα Στοίβας II Τι θα κάνουμε σήμερα Ισοδυναμία αυτομάτων στοίβας με ασυμφραστικές γραμματικές (2.2.3) 1 Ισοδυναμία PDA με CFG Θεώρημα: Μια

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 4. Μη Ντετερμινιστικά Πεπερασμένα Αυτόματα 9,19 Φεβρουαρίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Μοντέλα Υπολογισμού Μη Ντετερμινιστικό Πεπερασμένα Αυτόματα: Διαφορά

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing που να διαγιγνώσκει τη γλώσσα { n 3 } (α) H ζητούμενη μηχανή Turing μπορεί να διατυπωθεί ως την επτάδα Q,

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

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

Φροντιστήριο 2 Λύσεις ΕΠΛ2: Θεωρία Υπολογισμού και Πολυπλοκότητα Άσκηση Φροντιστήριο 2 Λύσεις Ποια από τα πιο κάτω αυτόματα αποτελούν DFA επί του αλφάβητου {,}. Αιτιολογήστε τις απαντήσεις σας. (i) (ii) (iii) (iv) (v), (vi),

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

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

Σειρά Προβλημάτων 4 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 4 Λύσεις (α) Να διατυπώσετε την τυπική περιγραφή μιας μηχανής Turing που να διαγιγνώσκει τη γλώσσα { ww rev w {a, b} * και w αποτελεί καρκινική λέξη } (α) H ζητούμενη μηχανή

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

Γενικές Παρατηρήσεις. Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα (1) Το Λήµµα της Αντλησης. Χρήση του Λήµµατος Αντλησης.

Γενικές Παρατηρήσεις. Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα (1) Το Λήµµα της Αντλησης. Χρήση του Λήµµατος Αντλησης. Γενικές Παρατηρήσεις Μη Κανονικές Γλώσσες - Χωρίς Συµφραζόµενα () Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Υπάρχουν µη κανονικές γλώσσες, π.χ., B = { n n n }. Αυτό

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 9: Αυτόματα Στοίβας (Pushdown Automata - PDA)

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 9: Αυτόματα Στοίβας (Pushdown Automata - PDA) ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 9: Αυτόματα Στοίβας (Pushdown Automata - PDA) Τι θα κάνουμε σήμερα Εισαγωγή στα Αυτόματα Στοίβας Τυπικός Ορισμός Αυτομάτου Στοίβας (2.2.1) Παραδείγματα

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

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών. Προδιαγραφές

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών. Προδιαγραφές Εισαγωγή στην Επιστήμη των Υπολογιστών 4ο εξάμηνοσ.h.m.μ.y. & Σ.Ε.Μ.Φ.Ε. http://www.corelab.ece.ntua.gr/courses/ 3η ενότητα: Αυτόματα και Τυπικές Γραμματικές Στάθης Ζάχος Συνεργασία: Κωστής Σαγώνας Επιμέλεια:

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

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

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

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

Στοιχεία Θεωρίας Υπολογισµού (2): Πεπερασµένα Αυτόµατα, Κανονικές Εκφράσεις

Στοιχεία Θεωρίας Υπολογισµού (2): Πεπερασµένα Αυτόµατα, Κανονικές Εκφράσεις Στοιχεία Θεωρίας Υπολογισµού (2): Πεπερασµένα Αυτόµατα, Κανονικές Εκφράσεις Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Ο. Τελέλης Πανεπιστήµιο Πειραιώς Θεωρία Υπολογισµού

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

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6

Αυτόματα. Παράδειγμα: πωλητής καφέ (iii) Παράδειγμα: πωλητής καφέ (iv) Εισαγωγή στην Επιστήμη των Υπολογιστών 6 Εισαγωγή στην Επιστήμη των Υπολογιστών 3η ενότητα: Αυτόματα και Τυπικές Γραμματικές http://www.corelab.ece.ntua.gr/courses/ Αυτόματα Τρόπος κωδικοποίησης αλγορίθμων. Τρόπος περιγραφής συστημάτων πεπερασμένων

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 2: Μαθηματικό Υπόβαθρο ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 2: Μαθηματικό Υπόβαθρο Τι θα κάνουμε σήμερα Συναρτήσεις & Σχέσεις (0.2.3) Γράφοι (Γραφήματα) (0.2.4) Λέξεις και Γλώσσες (0.2.5) Αποδείξεις (0.3) 1

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Επιστήμη των Υπολογιστών Εισαγωγή στην Επιστήμη των Υπολογιστών 3η ενότητα: Αυτόματα και Τυπικές Γραμματικές http://www.corelab.ece.ntua.gr/courses/ Αυτόματα Τρόπος κωδικοποίησης αλγορίθμων. Τρόπος περιγραφής συστημάτων πεπερασμένων

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

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

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

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

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

Σειρά Προβλημάτων 3 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 3 Λύσεις Να δώσετε ασυμφραστικές γραμματικές που να παράγουν τις πιο κάτω γλώσσες: (α) { a m b n c p m,n,p 0 και είτε m + n = p είτε m = n + p } (β) { xx rev yy rev x, y {a,b}

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

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

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

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

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

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

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

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ

Η δυαδική σχέση M ( «παράγει σε ένα βήμα» ) ορίζεται ως εξής: (q, w) M (q, w ), αν και μόνο αν w = σw, για κάποιο σ Σ Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

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

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

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

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

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2) Ισοδυναµία CFG και PDA. Σε αυτό το µάθηµα. Αυτόµατα Στοίβας Pushdown Automata

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2) Ισοδυναµία CFG και PDA. Σε αυτό το µάθηµα. Αυτόµατα Στοίβας Pushdown Automata Σύνοψη Προηγούµενου Γλώσσες χωρίς Συµφραζόµενα (2) Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Αυτόµατα Στοίβας Pushdown utomata Ισοδυναµία µε τις Γλώσσες χωρίς Συµφραζόµενα:

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

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

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

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

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

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

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

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

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

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

CSC 314: Switching Theory

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

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

Σύνοψη Προηγούµενου. Κανονικές Γλώσσες (1) Προβλήµατα και Γλώσσες. Σε αυτό το µάθηµα. ιαδικαστικά του Μαθήµατος.

Σύνοψη Προηγούµενου. Κανονικές Γλώσσες (1) Προβλήµατα και Γλώσσες. Σε αυτό το µάθηµα. ιαδικαστικά του Μαθήµατος. Σύνοψη Προηγούµενου Κανονικές Γλώσσες () ιαδικαστικά του Μαθήµατος. Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Εισαγωγή: Υπολογισιµότητα και Πολυπλοκότητα. Βασικές

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

ΠΛΗ30 ΕΝΟΤΗΤΑ 3: ΚΑΝΟΝΙΚΕΣ ΓΛΩΣΣΕΣ. Μάθηµα 3.2: ηµήτρης Ψούνης

ΠΛΗ30 ΕΝΟΤΗΤΑ 3: ΚΑΝΟΝΙΚΕΣ ΓΛΩΣΣΕΣ. Μάθηµα 3.2: ηµήτρης Ψούνης ΠΛΗ30 ΕΝΟΤΗΤΑ 3: ΚΑΝΟΝΙΚΕΣ ΓΛΩΣΣΕΣ Μάθηµα 3.2: Ντετερµινιστικά Πεπερασµένα Αυτόµατα ηµήτρης Ψούνης 2 ΠΕΡΙΕΧΟΜΕΝΑ Α. Σκοπός του Μαθήµατος Β. Θεωρία 1. Πεπερασµένα Αυτόµατα 1. Λειτουργία και Παραδείγµατα

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

HEAD INPUT. q0 q1 CONTROL UNIT

HEAD INPUT. q0 q1 CONTROL UNIT Πεπερασμένα Αυτόματα (ΠΑ) Τα πεπερασμένα αυτόματα είναι οι απλούστερες «υπολογιστικές μηχανές». Δεν έχουν μνήμη, μόνο μία εσωτερική μονάδα με πεπερασμένο αριθμό καταστάσεων. Διαβάζουν τη συμβολοσειρά εισόδου

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 7: Ασυμφραστικές Γλώσσες (Γλώσσες Ελεύθερες Συμφραζομένων)

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

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

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

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

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 10. Μηχανές Turing 20,23 Μαρτίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Μηχανές Turing: Ένα Γενικό Μοντέλο Υπολογισμού Ποια μοντέλα υπολογισμού μπορούν να δεχθούν γλώσσες

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

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

Φροντιστήριο 2 Λύσεις Άσκηση Φροντιστήριο 2 Λύσεις Ποια από τα πιο κάτω αυτόματα αποτελούν DFA επί του αλφάβητου {,}. Αιτιολογήστε τις απαντήσεις σας. (i) (ii) (iii) (iv) (v), (vi), (i) Όχι, δεν υπάρχει αρχική κατάσταση. (ii)

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

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 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, η οποία

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

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2): Αυτόµατα Στοίβας. Παραδείγµατα Σχεδιασµού CFG. Παράδειγµα 1.

Σύνοψη Προηγούµενου. Γλώσσες χωρίς Συµφραζόµενα (2): Αυτόµατα Στοίβας. Παραδείγµατα Σχεδιασµού CFG. Παράδειγµα 1. Σύνοψη Προηγούµενου Γλώσσες χωρίς Συµφραζόµενα 2): Αυτόµατα Στοίβας Ορέστης Τελέλης telelis@unipi.gr Τµήµα Ψηφιακών Συστηµάτων, Πανεπιστήµιο Πειραιώς Μη Κανονικές Γλώσσες Το Λήµµα της Αντλησης για τις

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 14: Γραμματικές Χωρίς Συμφραζόμενα Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

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

L mma thc 'Antlhshc. A. K. Kapìrhc

L mma thc 'Antlhshc. A. K. Kapìrhc L mma thc 'Antlhshc A. K. Kapìrhc 12 MartÐou 2009 2 Perieqìmena 1 Το Λήμμα της Άντλησης για μη κανονικές γλώσσες 5 1.1 Μη κανονικές γλώσσες..................................... 5 1.2 Λήμμα άντλησης για

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

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

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

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

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

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

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

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

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

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

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

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ Ενότητα 4: Μη-ντετερμινιστικά πεπερασμένα αυτόματα με ε-μεταβάσεις Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

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

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

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

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

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

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

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

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

ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΩΝ ΚΑΙ ΑΥΤΟΜΑΤΩΝ Ενότητα 8: Ιδιότητες Γραμματικών χωρίς Συμφραζόμενα Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

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

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 12: Μηχανές Turing ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας Διάλεξη 12: Μηχανές Turing Τι θα κάνουμε σήμερα Εισαγωγή στις Μηχανές Turing (TM) Τυπικός Ορισμός Μηχανής Turing (3.1.1) 1 Τι είδαμε μέχρι στιγμής Πεπερασμένα

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

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

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

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 1. Μαθηματικό Υπόβαθρο 23, 26 Ιανουαρίου 2007 Δρ. Παπαδοπούλου Βίκη 1 1.1. Σύνολα Ορισμός : Σύνολο μια συλλογή από αντικείμενα Στοιχεία: Μέλη συνόλου Τα στοιχεία

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

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

Θεωρία Υπολογισμού και Πολυπλοκότητα Θεωρία Υπολογισμού και Πολυπλοκότητα Κεφάλαιο 7. Αυτόματα Στοίβας 9,13 Μαρτίου 2007 Δρ. Παπαδοπούλου Βίκη 1 Γιατί τα πεπερασμένα αυτόματα δεν μπορούν να αναπαραστήσουν οποιαδήποτε κατηγορηματική γλώσσα?

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ Θεωρία Υπολογισμού Ενότητα 10: Ισοδυναμία ντετερμινιστικών και μη ντετερμινιστικών αυτομάτων Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπ Θεωρία Υπολογισμού Ενότητα 11: Κλειστότητα, ΠΑ & καν. εκφράσεις Τμήμα Πληροφορικής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Cretive Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

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

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

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

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

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

Σειρά Προβλημάτων 2 Λύσεις ΕΠΛ211: Θωρία Υπολογισμού και Πολυπλοκότητα Άσκηση 1 Σιρά Προβλημάτων 2 Λύσις Να δώστ κανονικές κφράσις που να πριγράφουν τις πιο κάτω γλώσσς. (α) { w {,} * η w δν πριέχι δύο συνχόμνα όμοια γράμματα }

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

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ

Μεταγλωττιστές. Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Μεταγλωττιστές Ενότητα 2: Τυπικές γλώσσες (Μέρος 1 ο ) Αγγελική Σγώρα Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

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

ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων

ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων ΚΕΦΑΛΑΙΟ 3: Συνθήκες Αλυσίδων Μελετάμε εδώ τη συνθήκη της αύξουσας αλυσίδας υποπροτύπων και τη συνθήκη της φθίνουσας αλυσίδας υποπροτύπων Αυτές συνδέονται μεταξύ τους με την έννοια της συνθετικής σειράς

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