HY-280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.

Σχετικά έγγραφα
Σειρά Προβλημάτων 3 Λύσεις

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

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

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

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

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

HY 280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.

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

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

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

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

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

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

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

HY-280. θεμελιακές έννοιες της επιστήμης του υπολογισμού ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ. Γεώργιος Φρ.

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

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

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

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

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

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

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

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

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

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

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

ΣΥΣΤΗΜΑΤΑ. Για την επίλυση ενός γραμμικού συστήματος με την χρήση των οριζουσών βασική είναι η παρακάτω επισήμανση:

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

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

Ασκήσεις μελέτης της ενότητας «Συντακτική Ανάλυση»

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος στη δεύτερη έκδοση

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

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

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

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

Γλώσσες Χωρίς Συμφραζόμενα

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

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

Μη γράφετε στο πίσω μέρος της σελίδας

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

Βασικά-Ορισμοί Ιδιότητες Ανισοταυτότητες Διαστήματα. Ανισότητες. Κώστας Κυρίτσης. 1ο ΓΕΛ Ν.Ηρακλείου. 17 Νοεμβρίου

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

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

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

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

Ασκήσεις μελέτης της ενότητας «Συντακτική Ανάλυση»

Μοντελοποίηση Υπολογισμού. Γραμματικές Πεπερασμένα Αυτόματα Κανονικές Εκφράσεις

Γλώσσες Χωρίς Συμφραζόμενα

5.2 ΑΡΙΘΜΗΤΙΚΗ ΠΡΟΟ ΟΣ

ΑΣΚΗΣΕΙΣ ΠΙΘΑΝΟΤΗΤΩΝ του Παν. Λ. Θεοδωρόπουλου 0

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

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

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

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

ΑΝΑΛΥΣΗ 1 ΠΕΜΠΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης.

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

[(W V c ) (W c V c )] c \ W = [(W V c ) (W c V c )] c \ W = [(W V c ) c (W c V c ) c ] \ W = [(W c W ) V ] \ W

4 η δεκάδα θεµάτων επανάληψης

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

( ) Άρα το 1 είναι ρίζα του P, οπότε το x 1 είναι παράγοντάς του. Το πηλίκο της διαίρεσης ( x 3x + 5x 3) : ( x 1) είναι:

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

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

Τεχνητή Νοημοσύνη. 21η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

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

(18 ο ) ΚΛΑΣΜΑΤΙΚΗ ΑΝΑΓΩΓΗ - ΙI: «διάμεσος &θεσιακή επιλογή στοιχείου»

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

ΓΡΑΠΤΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΘΗΜΑΤΙΚΩΝ ΓΥΜΝΑΣΙΟΥ ΜΑΪΟΣ 2012

Ασκήσεις1 Πολυώνυμα. x x c. με το. b. Να βρεθούν όλες οι τιμές των a, Να βρεθεί ο μκδ και το εκπ τους

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

ΑΛΓΕΒΡΑ Β ΛΥΚΕΙΟΥ Κεφ. 1 - Συστήματα 1

Επαναληπτικές Ασκήσεις στα Σύνολα

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

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

9 Πολυώνυμα Διαίρεση πολυωνύμων

HY Λογική Διδάσκων: Δ. Πλεξουσάκης

ΑΝΑΛΥΣΗ 1 ΕΝΑΤΟ ΜΑΘΗΜΑ, Μ. Παπαδημητράκης.

b. Για κάθε θετικό ακέραιο m και για κάθε A. , υπάρχουν άπειρα το πλήθος πολυώνυμα ( x) [ x] m και ( A) 0.

1. * Ο αριθμός, ν Ν, είναι ανάγωγο κλάσμα για κάθε ν Ν. Σ Λ 2. * Οι αριθμοί 2ν και 2ν + 2 είναι διαδοχικοί άρτιοι για κάθε ν Ν.

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

ΕΠΙΤΡΟΠΗ ΔΙΑΓΩΝΙΣΜΩΝ 36 η Εθνική Μαθηματική Ολυμπιάδα «Ο ΑΡΧΙΜΗΔΗΣ» 23 Φεβρουαρίου 2019 Θέματα και ενδεικτικές λύσεις μεγάλων τάξεων

0x2 = 2. = = δηλαδή η f δεν. = 2. Άρα η συνάρτηση f δεν είναι συνεχής στο [0,3]. Συνεπώς δεν. x 2. lim f (x) = lim (2x 1) = 3 και x 2 x 2

Οδηγίες για το CABRI - GEOMETRY II Μωυσιάδης Πολυχρόνης - Δόρτσιος Κώστας

Παράδειγμα δομικής επαγωγής Ορισμός δομικής επαγωγής Συμβολοσειρές Γλώσσες Δυαδικά δένδρα Μαθηματικά Πληροφορικής 3ο Μάθημα Τμήμα Πληροφορικής και Τηλ

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

12. ΑΝΙΣΩΣΕΙΣ Α ΒΑΘΜΟΥ. είναι δύο παραστάσεις μιας μεταβλητής x πού παίρνει τιμές στο

ΓΡΑΜΜΙΚΗ ΑΛΓΕΒΡΑ (ΗΥ-119)

Μη γράφετε στο πίσω μέρος της σελίδας

Γραµµατικοί κανόνες Κανόνες µεταγραφής συµβόλων

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

ΚΕΦΑΛΑΙΟ 1ο: ΜΙΓΑΔΙΚΟΙ ΑΡΙΘΜΟΙ ΕΝΟΤΗΤΑ 2: ΜΕΤΡΟ ΜΙΓΑΔΙΚΟΥ ΑΡΙΘΜΟΥ - ΙΔΙΟΤΗΤΕΣ ΤΟΥ ΜΕΤΡΟΥ [Κεφ. 2.3: Μέτρο Μιγαδικού Αριθμού σχολικού βιβλίου].

2.1 Διαιρετότητα, ισοϋπόλοιποι αριθμοί. q Z, a = b q + r.

Βρέντζου Τίνα Φυσικός Μεταπτυχιακός τίτλος ΜEd: «Σπουδές στην εκπαίδευση»

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

ΔΙΑΓΩΝΙΣΜΑ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ 89. Ύλη: Πιθανότητες Το σύνολο R-Εξισώσεις Σ Λ 2. Για τα ενδεχόμενα Α και Β ισχύει η ισότητα: A ( ) ( ') ( ' )

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

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

4.2 ΕΥΚΛΕΙΔΕΙΑ ΔΙΑΙΡΕΣΗ

Η έννοια του συνόλου. Εισαγωγικό κεφάλαιο 27

1.5 ΑΞΙΟΣΗΜΕΙΩΤΕΣ ΤΑΥΤΟΤΗΤΕΣ

Μη γράφετε στο πίσω μέρος της σελίδας

Transcript:

HY-280 «ΘΕΩΡΙΑ ΥΠΟΛΟΓΙΣΜΟΥ» θεμελιακές έννοιες της επιστήμης του υπολογισμού ΑΣΚΗΣΕΙΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ Γεώργιος Φρ. Γεωργακόπουλος Μέρος B Βασικά στοιχεία περί ασυμφραστικών γραμματικών και στοιβακτικών αυτομάτων.

Β ΜΕΡΟΣ ΑΣΚΗΣΕΙΣ ΑΣΥΜΦΡΑΣΤΙΚΕΣ ΓΡΑΜΜΑΤΙΚΕΣ & ΣΤΟΙΒΑΚΤΙΚΑ ΑΥΤΟΜΑΤΑ Τα ερωτήματα είναι απλά και με λυμμένα παραδείγματα. Προσπαθείστε να δώσετε τα περισσότερα που μπορείτε. Βαθμολογικά θα μετρήσουν τα εξής: το πόση «ύλη» καλύψατε, (με στόχο πάνω από το 70%, και ένα τουλάχιστον υπο-ερώτημα από κάθε ερώτημα), η ποιότητα των απαντήσεων (ζητείται σαφήνεια, ακρίβεια, εξηγήσεις, και «σωστή γλώσσα»/ορολογία). ΔΙΟΡΙΑ ΠΑΡΑΔΟΣΗΣ: Μαζί με την γραπτή εξέταση της Α εξεταστικής π. (αναμένεται μετά την 15 η /1 ου ). (#1) ΑΣΥΜΦΡΑΣΤΙΚΕΣ ΓΡΑΜΜΑΤΙΚΕΣ: Το εάν μια γραμματική είναι ασυφραστική ή όχι, φαίνεται στην μορφή της, στον τρόπο με τον οποίο είναι γραμμένη: πρέπει (i) τα παραγωγικά σύμβολα («κεφαλαία») να μετατρέπονται μόνον σε λέξεις λέξεις από τερματικά ή/και παραγωγικά σύμβολα, (κανένα, ένα ή περισσότερα). ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Ποιές από τις εξής γραμματικές είναι ασυμφραστικές; I α β Κ γ Κ ΛΜ ΜΛ Λ β Ι β Κ Μ γ Μ Μ Λ I γ γ γ Λ Κ Λ Κ Λ Κ β β β αβ Μ Μ α α Λ I Κ Κα Λ Μ Μ γ Μ Λ (α) (β) (γ) (α) Είναι τηρεί την μορφή που περιγράφεται στο αρχικό σχόλιο. (β) Είναι αριστερά έχουμε ένα μόνον παραγωγικό σύμβολο («κεφαλαίο»). (γ) Δεν είναι: ο κανόνας Κ α... έχει δύο σύμβολα αριστερά του. ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#1) (1.1) Ποιές από τις εξής γραμματικές είναι ασυμφραστικές; I Α + Β Α ΑΒ Β Β x y z I Κ αβγλ Κ γ γ Κ Λ Ι Λ β Ι Χ Υ Ζ Χ Υ Ζ Ζ Ι Χ (α) (β) (γ) (1.2) Περιγράψτε (σε απλά και σαφή Ελληνικά) το ποιές γλώσσες επί του Σ = { α, β } αποδέχονται οι παρακάτω γραμματικές, με αρχικό σύμβολο το Ι: (1.2.1) Σ = {(,),[,], Ι ( Ι ) Ι [ Ι ] Ι (1.2.2) Σ = { α, β, γ, δ } Ι Ιαδ Ιαδ α Ιαδ δ Ιβδ Ιαγ Ιβδ β Ιβδ δ Ιβγ Ιαγ α Ιαγ γ Ιβγ Ιβγ β Ιβγ γ (#2) ΑΣΥΜΦΡΑΣΤΙΚΕΣ ΓΛΩΣΣΕΣ ΚΑΙ ΚΛΕΙΣΤΟΤΗΤΑ:

Το εάν μια γλώσσα είναι ασυμφραστική ή όχι, εξαρτάται από το εάν μπορούμε να βρούμε μια ασυμφραστική γραμματική γι αυτήν ή όχι. Στις απλές περιπτώσεις αυτό το κάνουμε «κατ ευθείαν». Στις πιο σύνθετες χρησιμοποιούμε τους κανόνες κλειστότητας. Προσοχή όμως: οι ασυμφραστικές γλώσσες _δεν_ είναι κλειστές ως προς την τομή, συμπλήρωμα ή διαφορά. Είναι κλειστές ως προς ένωση, παράθεση, επανάληψη, και κατοπτρισμό. Είναι επίσης κλειστές ως προς την τομή αλλά με κάποια ομαλή γλώσσα. ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Δείξτε ότι οι εξής γλώσσες είναι ασυμφραστικές; (α) Λ = «όλες οι λέξεις που αρχίζουνε με μια σειρά από α και τελειώνουν με μια σειρά από β ή γ (ανακατεμένα) και πλήθος(α) = πλήθος(β) + πλήθος(γ)» (β) Λ = «όλες οι λέξεις από ισορροπημένες παρενθέσεις που _δεν_ περιέχουν τρείς απλές παρενθέσεις στη σειρά (δηλαδή το ( ) ( ) ( ) )» (γ) Λ = «όλες οι λέξεις που περιέχουν 3 α στη σειρά αλλά δεν περιέχουν 3 β στη σειρά». (α) Οι εξής κανόνες αρκούν: Ι α Ι Τ, Τ β γ. (β) Γνωρίζουμε ότι η γλώσσα ΛΙ των ισορροπημένων παρενθέσεων είναι ασυμφραστική, και γνωρίζουμε ότι η γλώσσα Λ = Σ* [ Σ* ( ) ( ) ( ) Σ* ] είναι ομαλή ως συμπλήρωμα ομαλής. Η τομή Λ = ΛΙ Λ είναι ασυμφραστική ως τομή ασυμφραστικής με ομαλή γλώσσα, και είναι η ζητουμένη. (γ) Η Λ είναι ομαλή ως διαφορά δύο ομαλών γλωσσών, άρα είναι και ασυμφραστική, αφού ΟΜΑΛΕΣ ΓΛΩΣΣΕΣ ΑΣΥΜΦΡΑΣΤΙΚΕΣ ΓΛΩΣΣΕΣ. ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#2) Σχεδιάστε ασυμφραστικές γραμματικές ώστε να παράγουν τις εξής γλώσσες: (2.1) { λ {α, β}* : (πλήθος «α» στην λ) = 2 (πλήθος «β») στην λ) } (2.2) { λ {α, β, γ}* : η λέξηλ έχει την μορφή x γ x (R), x {α, β}* } (2.3) { λ {α, β}* : η λέξη λ έχει την μορφή λ = λ (R) } // λ (R) = η λ γραμμένη ανάποδα (κατοπρικά) (2.4) Έστω ότι η S είναι ασυμφραστική γλώσσα και η L ομαλή γλώσσα. Εξηγήστε τα εξής (θεωρητικά ή δια παραδείγματος): (2.4.1) υπάρχει περίπτωση η S L να μην είναι ασυμφραστική; (2.4.2) υπάρχει περίπτωση η L S να μην είναι ασυμφραστική; (2.5) { λ {α, β, }*: λ = α (μ) β (ν), μ ν } (2.6) { λ {α, β, }*: λ α (μ) β (ν), μ ν } (#3) ΣΥΝΤΑΚΤΙΚΑ ΔΕΝΔΡΑ: Το εάν μια λέξη ανήκει σε μια ασυμφραστική γλώσσα πιστοποιείται μόνον εάν δώσουμε την σειρά των κανόνων με τους οποίους παράγεται. Εναλλακτικά έχουμε μια δυνατότητα μιας απεικονιστικής βεβαίωσης δίνοντας ένα κάποιο (ή«το») συντακτικό δένδρο (ΣΔ) που παράγει την λέξη. ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Ποιά συντακτικά δένδρα παράγουν τις αντίστοιχες λέξεις από τις αντίστοιχες γραμματικές: (α) Γραμματική: Ι V ( Ι ) ( Ι Ι ) V p q r και λ = (( p r) ( p)) (β) Γραμματική: Ι αβ βα Α αι βαα Β αββ βι και λ = α α β β (α) Το εξής συντακτικό δένδρο. Ι ( Ι Ι ) ( Ι Ι ) ( Ι V ) V p V r p (β) Το εξής συντακτικό δένδρο.

Ι α Β α Β Β β Ι β Ι Προσέξτε την μορφή ενός ΣΔ: Ρίζα: η ρίζα περιέχει πάντοτε το αρχικό παραγωγικό σύμβολο (εδώ το Ι). Κόμβοι: οι μη-τερματικοί κόμβοι περιέχουν από ακριβώς ένα παραγωγικό σύμβολο (π.χ. το Β). Φύλλα: οι τερματικοί κόμβοι (τα «κίτρινα» φύλλα) περιέχουν τερματικές λέξεις, (από «πεζά» σύμβολα, όπως εδώ α ή β, ή και ίσως την κενή λέξη ). Ακμές: κάθε κόμβος Κ μαζί με τους θυγατρικούς του θ1, θ2,..., θν από αριστερά προς τα δεξιά αντιστοιχεί σε κανόνα της γραμματικής Κ θ1 θ2,... θν (π.χ. Β α Β Β): κάθε τερματική λέξη και κάθε παραγωγικό σύμβολο γίνονται «θυγατρικοί» του συμβόλου από όπου προέρχονται (βλ. π.χ. παραπάνω τον κανόνα Β α Β Β) ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#3) (3.1) Χρησιμοποιείστε την γραμματική των αλγεβρικών εκφράσεων (βλ. σημειώσεις, 15η ενότητα) για να βρείτε το συντακτικό δένδρο της έκφρασης v2 * v1 + v3. Αυτή η έκφραση αναγιγνώσκεται και ως (v2 * v1) + v3 και ως v2 * (v1 + v3) σε ποιά συντακτικό δένδρο αντιστοιχεί κάθε ανάγνωση; Θα μπορούσατε να είχατε παραγάγει και τους δύο τρόπους με την γραμματική που δίδεται; Γιατί; (3.2) Δώσατε συντακτικό δένδρο, για την λέξη ( ( ) ) ( ) ( ) της γλώσσας των παρενθέσεων, κατά την εξής γραμματική: Ι ( Ι ) Ι Ι. (3.3) Δώσατε συντακτικό δένδρο, (κατά τις σχετικές γραμματικές, βλ. σημειώσεις, 13η ενότητα), για την λέξη ααβββα της γλώσσας Lαβ = «όσα-α-τόσα-β». (#4) ΑΙΤΙΟΚΡΑΤΙΚΗ ΜΟΡΦΗ ΑΣΥΜΦΡΑΣΤΙΚΗΣ ΓΡΑΜΜΑΤΙΚΗΣ Όχι όλες, αλλά πολλές χρήσιμες ασυμφραστικές γραμματικές είναι να δυνατόν να λάβουν αιτιοκρατική μορφή: σε μια αιτιοκρατική ασυμφραστική γραμματική υπάρχει το πολύ ένας εφαρμόσιμος κανόνας κάθε στιγμή, ο οποίος μάλιστα εξαρτάται από τον επόμενο προς ανάγνωση γράμμα της υπό ανάλυση λέξης. Τα εξής εμπόδια που πρέπει να απαλειφούν: - απαλειφή διλημμάτων (φανερά και «κρυφά»). - απαλειφή αριστερής αναδρομής (βλ. και σημειώσεις). ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Δώστε μια αιτιοκρατική εκδοχή για την εξής ασυμφραστική γραμματική: Ι αβγχ αβδυ, Χ Χδ ε, Υ ΧΧ Ι. Στο παραπάνω παράδειγμα έχουμε το δίλημμα Ι αβγχ αβδυ. Αυτό απαλείφεται από την αλλαγή Ι αβ Ι, και Ι γχ δυ: έτσι το κοινό μέρος αβ των αβγ και αβδ αποσπάται αφήνοντας το γ να επιλέγει τον 1ο κανόνα, και το δ το 2ο κανόνα. Η αριστερή αναδρομή Χ Χδ ε, απαλείφεται με τους κανόνες Χ εχ, Χ δχ, αφού κατά τους παραπάνω κανόνες το Χ μετατρέπεται απλά και μόνον σε ε δ δ... δ. Τέλος έχουμε το (κρυφό) δίλημμα Υ ΧΧ Ι (και τα δύο αρχίζουν με «κενό»). Για να κάνουμε το επόμενο προς ανάγνωση σύμβολο να καθορίσει την ορθή (ή ακριβέστερα την μόνη) επιλογή, προσέχουμε πως εδώ ό,τι παράγεται από Χ αρχίζει με ε, ενώ ό,τι παράγεται από Ι αρχίζει με αβ, άρα αρκεί να χρησιμοποιήσουμε εναλλακτικά τους κανόνες Υ εχ αβι. Μια ισοδύναμη αιτιοκρατική μορφή είναι λοιπόν: Ι αβ Ι Ι γχ δυ Χ εχ Χ δχ Υ εχ αβι

ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#4) (4.1) Δώστε μια αιτιοκρατική εκδοχή για την εξής ασυμφραστική γραμματική: Ι Ι σ τ ρ Χ Υ Υ Ι Υ σ σ τ Χ σ τ τ Ι (#5) ΣΤΟΙΒΑΚΤΙΚΑ ΑΥΤΟΜΑΤΑ: Στα στοιβακτικά αυτόματα έχουμε διαθέσιμες εντολές της μορφής K Q, λ Κ Q1 Q2 ή «αν είσαι σε κατάσταση Κ, η κορυφή της στοίβας περιέχει Q, και «βλέπει» την λέξη λ, τότε μπορείς να διαβάσεις λ, να έλθεις σε κατάσταση Κ, και να αποθέσεις στη στοίβα τα Q1, Q2». Εδώ, μας ενδιαφέρουν σ. αυτόματα, στα οποία μία και μόνον οδηγία «ανάγνωσης» λέξης λ είναι εφαρμόσιμη κάθε φορά (αλλιώς, έχουμε απλώς απόσυρση από τη στοίβα: (K Q, ) (Κ ), χωρίς ανάγνωση, και χωρίς απόθεση στη στοίβα νέων συμβόλων ). ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Δώστε τις οδηγίες για ένα σ. αυτόματο που διαβάζει την γλώσσα των ισορροπημένων παρενθέσων, Ι ( Ι ). Η extra κατάσταση Κ δεν βοηθάει εδώ και παραλείπεται. Οι εντολές είναι: Ι, ( Ι ) Ι αν δεις αριστερή παρένθεση, την διαβάζεις και στοιβάζεις το «υπόλοιπο» Ι ) Ι. Ι, αν όχι, τότε αποσύρεσαι από τη στοίβα χωρίς ανάγνωση ή απόθεση. (, ( η αριστερή παρένθεση διαβάζει αριστερή παρένθεση. ), ) η δεξιά παρένθεση διαβάζει δεξιά παρένθεση.. ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#5) (5) Δείξτε ότι οι εξής γλώσσες γίνονται αποδεκτές από «αιτιοκρατικό» στοιβακτικό αυτόματο όπως παραπάνω. Αν θέλετε, υποθέστε για ευκολία, ότι η στοίβα και η ταινία φέρουν στο τέλος τους ένα βοηθητικό σύμβολο #. (5.1) L = { λ {α, β}* : λ = α(μ)β(ν), μ ν } (χρησιμοποιείστε 3 καταστάσεις Κ = CHECK, OK, FAIL.) (5.2) L = { λ {α, β, γ}* : η λ έχει την μορφή x γ x (R), x {α,β}* } (δεν απαιτείται extra κατάσταση Κ.) (#6) ΚΑΝΟΝΙΚΗ ΜΟΡΦΗ CHOMSKY Μια ασυμφραστική γραμματική είναι σε μορφή Chomsky εάν και μόνον όλοι οι κανόνες έχουν την εξής μορφή: Χ ΥΖ (ένα παραγωγικό σύμβολο γίνεται ακριβώς δύο παραγωγικά σύμβολα). Χ σ (ένα παραγωγικό σύμβολο γίνεται ακριβώς ένα τερματικό σύμβολο). Ι (μόνον το αρχικό σύμβολο μπορεί να καταστεί «κενό»). ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Δώστε την κανονική μορφή Chomsky για την εξής ασυμφραστική γραμματική: Ι ΑΒΓ αβ Α ββι Β γι Γ ΓΓ βα Για να απαλείψουμε τον κανόνα Β τον εφαρμόζουμε προσθέτοντας για κάθε κανόνα της μορφής Κ ΧΒΥ (περιέχει δεξιά Β), τον ίδιο κανόνα χωρίς το Β: Κ Χ Υ. Ι ΑΒΓ ΑΓ αβ α Α ββι Β γι Γ ΓΓ βα Για να κάνουμε τις απαραίτητες αλλαγές ως προς το πλήθος και είδος των συμβόλων χρησιμοποιούμε βοηθητικά σύμβολα:

WΒΓ για να παραχθεί το ζεύγος ΒΓ Wβα, Wββ για να παραχθούν οι λέεις βα, ββ Wσ για να γραφεί το τερματικό σ, όπου σ = α, β, γ. Οι αντικαταστάσεις στους κανόνες είναι περίπου προφανείς: Ι Α WΒΓ ΑΓ Wα Β α Α Wββ Ι Β Wγ Ι Γ Γ Γ Wβα όπου, WΒΓ Β Γ Wββ Wβ Wβ Wβα Wβ Wα και φυσικά: Wα α Wβ β Wγ γ ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#6) (6) Γράψτε την εξής γραμματική σε μορφή Chomsky, και με βάση αυτή τη μορφή δώστε ένα συντακτικό δένδρο για την λέξη x + (y + z): Σ = { x, y, z, + }, ΣQ = { S, V }, I = S, Δ = { S S + S V ( S ), V x y z }. (#7) ΛΗΜΜΑ ΤΗΣ ΑΝΤΛΗΣΗΣ: Για να δείξουμε ότι μια γλώσσα είναι ασυμφραστική εξαρτάται από το να βρούμε μια ασυμφραστική γραμματική που να την παράγει. Για να δείξουμε ότι _δεν_ είναι ασυμφραστική πρέπει να δείξουμε ότι _καμμία_ ασυμφραστική γραμματική Γ δεν την παράγει _ακριβώς_, ότι δηλαδή η Γ είτε (i) προσθέτει λέξεις που δεν έχει η Λ είτε (ii) δεν παράγει λέξεις που έχει η Λ. Το εργαλείο εδώ για το (i) είναι το λήμμα άντλησης: δείχνουμε (αν μπορούμε) ότι, λόγω απείρου πλήθους λέξεων, αν η Λ ήταν ασυμφραστική τότε θα έπρεπε να περιέχει (μεταξύ άλλων) και όλες λέξεις της μορφής x μ(κ) y ν(κ) z, για κάποιες λέξεις x, y, z, μ, ν όπου μν > 0, κ = 0, 1, 2,... και δείχνουμε ότι (όποια ειδική μορφή και εάν είχαν οι λέξεις x, y, z, μ, ν), για κάποιο κ θα συνέβαινε x μ (κ) y ν (κ) z Λ πράγμα που οδηγεί σε άτοπο, και άρα η υπόθεση «Λ = ασυμφραστική» πρέπει να απορριφθεί. 2 ( n ) ΕΡΩΤΗΜΑ-ΠΑΡΑΔΕΙΓΜΑ: Δείξατε ότι η εξής γλώσσα Λ δεν είναι ασυμφραστική: Λ = { α : n 1 } (δηλαδή:«τόσα α όσο ένα οποιαδήποτε τέλειο τετράγωνο»). Έστω ότι η Λ παράγεται από κάποια ασυμφραστική γραμματική Γ. Όσο μεγάλη και εάν είναι η γραμματική Γ, η γλώσσα Λ έχει απείρου πλήθους λέξεις (διότι έχουμε απείρου πλήθους τέτράγωνα n 2 ) και άρα κατά το λήμμα της άντλησης κάποια από αυτές θα έχει την μορφή x μ (i) y ν (i) z, μν > 0, έτσι ώστε όλες οι λέξεις λ = x μ (κ) y ν (κ) z, κ 0, να ανήκουν στην Λ, δηλαδή το μήκος τους να είναι τέλειο τετράγωνο ή λ = n 2 φορές το «α». Αν p = x + y + z, και q = μ + ν, αυτό σημαίνει ότι για όλα τα κ θα πρέπει: πλήθος( α ) = x μ (κ) y ν (κ) z = p + κ q = n 2 (για κάποιο κατάλληλο n εξαρτώμενο από το κ). Αυτό όμως δεν μπορεί εδώ να συμβαίνει συνεχώς, (δηλαδή για όλα τα κ) διότι το αριστερό μέλος αυξάνεται «γραμμικά» ενώ το δεξιό «τετραγωνικά» συγκεκριμμένα, για τις διαδοχικές τιμές του κ = q και κ = q+1, θα είχαμε: p + (q)q = n 2,(δηλαδή n > q), αλλά και, p + (q+1)q = (n ) 2 (n+1) 2, (που είναι το πλησιέστερο μεγαλύτερο τετράγωνο). Αφαιρώντας την ισότητα από την ανισότητα θα λαμβάναμε, q [(n+1) 2 n 2 ] ή q 2n+1, το οποίο αντιφάσκει με το ότι n > q. Από το άτοπον συμπεραίνουμε ότι δεν υπάρχει ασυμφραστική γραμματική Γ που να παράγει την γλώσσα Λ. ΑΣΚΗΣΗ ΠΡΟΣ ΠΑΡΑΔΟΣΗ (#7) Χρησιμοποιείστε το λήμμα άντλησης για να δείξετε ότι οι εξής γλώσσες δεν είναι ασυμφραστικές: (α) L = { λ = α (p+1), όπου p = οποιοσδήποτε πρώτος φυσικός αριθμός } (προσοχή στο «p+1») (β) L = { λ {α, β}* : λ = x x x, για κάποιο x {α, β}* }.