Θεωρία Υπολογισμού. Ενότητα 7 : Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις. Αλέξανδρος Τζάλλας

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

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

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

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

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

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

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 1 : Σύνολα & Σχέσεις (1/2) Αλέξανδρος Τζάλλας

Θεωρία Υπολογισμού Αλφάβητα, Γλώσσες, Κανονικές Εκφράσεις

Θεωρία Υπολογισμού. Ενότητα 5 : Λογικά Επιχειρήματα, Αλφάβητα & Γλώσσες (2/2) Αλέξανδρος Τζάλλας

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 2 : Σύνολα & Σχέσεις (2/2) Αλέξανδρος Τζάλλας

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

Προγραμματισμός Διαδικτύου

Λειτουργικά Συστήματα

Αρχιτεκτονική υπολογιστών

Αντικειμενοστραφής Προγραμματισμός

Προγραμματισμός Διαδικτύου

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Προγραμματισμός Διαδικτύου

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

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

Θέματα υπολογισμού στον πολιτισμό

Εισαγωγή στους Αλγορίθμους

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Αρχιτεκτονική υπολογιστών

Προγραμματισμός Διαδικτύου

Πληροφορική II. Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι. τύποι δεδομένων. Δρ. Γκόγκος Χρήστος

Ιστορία της μετάφρασης

Εκκλησιαστικό Δίκαιο. Ενότητα 10η: Ιερά Σύνοδος της Ιεραρχίας και Διαρκής Ιερά Σύνοδος Κυριάκος Κυριαζόπουλος Τμήμα Νομικής Α.Π.Θ.

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Εισαγωγή στους Αλγορίθμους

Δομές Δεδομένων Ενότητα 1

Θέματα υπολογισμού στον πολιτισμό

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Λειτουργικά Συστήματα

Προγραμματισμός Διαδικτύου

Γενικά Μαθηματικά Ι. Ενότητα 12: Κριτήρια Σύγκλισης Σειρών. Λουκάς Βλάχος Τμήμα Φυσικής ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 6 : Δομές αρχείων. Δρ. Γκόγκος Χρήστος

Εφαρμογή Υπολογιστικών Τεχνικών στην Γεωργία

Φωνολογική Ανάπτυξη και Διαταραχές

Εισαγωγή στους Αλγορίθμους

Αρχιτεκτονική υπολογιστών

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

Ανατομία - Φυσιολογία Ακοής Ομιλίας Λόγου

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 4 : Πράξεις με bits. Δρ. Γκόγκος Χρήστος

Εισαγωγή στην Διοίκηση Επιχειρήσεων

Μάρκετινγκ Αγροτικών Προϊόντων

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

ΣΥΣΤΗΜΑΤΑ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ ΙIΙ

Διοικητική των επιχειρήσεων

Λειτουργικά Συστήματα

Θέματα υπολογισμού στον πολιτισμό

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΓΡΑΦΗΜΑΤΑ

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

Αντικειμενοστραφής Προγραμματισμός

Γενικά Μαθηματικά Ι. Ενότητα 15: Ολοκληρώματα Με Ρητές Και Τριγωνομετρικές Συναρτήσεις Λουκάς Βλάχος Τμήμα Φυσικής

Κλασσική Θεωρία Ελέγχου

Εκκλησιαστικό Δίκαιο

Ενδεικτικές λύσεις ασκήσεων διαχείρισης έργου υπό συνθήκες αβεβαιότητας

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Διοικητική των επιχειρήσεων

Μοντέρνα Θεωρία Ελέγχου

Λειτουργικά Συστήματα

Βάσεις Δεδομένων. Ενότητα 1: Εισαγωγή στις Βάσεις δεδομένων. Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών σπουδών

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

Αρχιτεκτονική υπολογιστών

Εκκλησιαστικό Δίκαιο

Νέες Τεχνολογίες και Καλλιτεχνική Δημιουργία

Διδακτική της Πληροφορικής

Προχωρημένα Θέματα Προγραμματισμού Δικτύων Ενότητα 8: ΈλεγχοςΡοήςΑνοικτούΒρόχου Φώτης Βαρζιώτης

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

Βιοχημεία - Αρχές Βιοτεχνολογίας

Νοσηλευτική Σεμινάρια

Λειτουργικά Συστήματα

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Θεσμοί Ευρωπαϊκών Λαών Ι 19 ος -20 ος αιώνας

Εργαστήριο Χημείας Ενώσεων Συναρμογής

Αντικειμενοστραφής Προγραμματισμός

Περιεχόμενα Ορισμός και λειτουργία των μηχανών Turing Θεωρία Υπολογισμού Ενότητα 20: Μηχανές Turing: Σύνθεση και Υπολογισμοί Επ. Καθ. Π. Κατσαρός Τμήμ

Λογισμός 3. Ενότητα 19: Θεώρημα Πεπλεγμένων (γενική μορφή) Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Βιοχημεία - Αρχές Βιοτεχνολογίας

Μηχανολογικό Σχέδιο Ι

Συμπεριφορά Καταναλωτή

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Εργαστήριο Χημείας Ενώσεων Συναρμογής

ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ. Λογισμός 3. Ενότητα 13: Τύπος του Taylor. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών

Νοσηλευτική Σεμινάρια

Λογισμός 3. Ενότητα 17: Απόδειξη Θεωρήματος Αντιστροφής. Μιχ. Γ. Μαριάς Τμήμα Μαθηματικών ΑΝΟΙΚΤΑ ΑΚΑ ΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Kruskal

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Οδοποιία IΙ. Ενότητα 14: Υπόδειγμα σύνταξης τευχών θέματος Οδοποιίας. Γεώργιος Μίντσης ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Transcript:

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Θεωρία Υπολογισμού Ενότητα 7 : Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις Αλέξανδρος Τζάλλας

2 Ανοιχτά Ακαδημαϊκά Τμήμα Μηχανικών Πληροφορικής Τ.Ε Θεωρία Υπολογισμού Ενότητα 7 : Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις Αλέξανδρος Τζάλλας Καθηγητής Εφαρμογών Άρτα, 205

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

4 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Χρηματοδότηση Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο TEI Ηπείρου» έχει χρηματοδοτήσει μόνο τη αναδιαμόρφωση του εκπαιδευτικού υλικού. Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα.

Σήμερα Εισαγωγή στα Ντετερμινιστικά Πεπερασμένα Αυτόματα Τυπικός Ορισμός Ντετερμινιστικών Πεπερασμένων Αυτόματων Σχεδιασμός Ντετερμινιστικού Πεπερασμένου Αυτόματου Κανονικές Πράξεις 5 5

Μοντέλα Υπολογισμού 930: Μηχανή Turing: αφαιρετική μηχανή (μοντελοποίηση ενός υπολογιστή) τι μπορεί και τι δεν μπορεί να επιλύσει μια υπολογιστική μηχανή 940-950: Πεπερασμένα Αυτόματα: αφαιρετική μηχανή για την αναγνώριση και παραγωγή γλωσσών Εφαρμογές Λογισμικό για την κατασκευή ψηφιακών κυκλωμάτων Ο λεκτικός αναλυτής ενός τυπικού μεταγλωττιστή Λογισμικό για τη σάρωση μεγάλης ποσότητας κειμένου 6 6

Πεπερασμένα αυτόματα Ερώτημα: Τι είναι υπολογιστής; Ποιες οι δυνατότητές του; Ποιοι οι περιορισμοί του; Η Θεωρία Υπολογισμού επιδιώκει να απαντήσει στα ερωτήματα αυτά στα πλαίσια διάφορων υπολογιστικών μοντέλων Πεπερασμένα αυτόματα: Απλούστερο υπολογιστικό μοντέλο Περιορισμένη μνήμη Έχουμε στις μέρες μας υπολογιστικά συστήματα τέτοιου τύπου; Αλληλεπιδρούμε καθημερινός με τέτοια συστήματα 7 7

Πεπερασμένα αυτόματo Αποτελείται από: Κεντρική μονάδα επεξεργασίας προκαθορισμένης χωρητικότητας Δέχεται είσοδο μια συμβολοσειρά μέσω μιας μαγνητικής ταινίας εισόδου Δεν έχει μνήμη Δεν παράγει έξοδο, παρά μόνο μια ένδειξη αν η είσοδος έγινε αποδεκτή 8 8

Αναπαράσταση Πεπερασμένων Αυτομάτων Γραφήματα με βάρη Κορυφές καταστάσεις Ακμές μεταβάσεις Βάρη ενέργειες που προκαλούν τη μετάβαση 9 9

Παράδειγμα Αυτόματη Πόρτα (/3) μπροστινό πατάκι πίσω πατάκι Τέσσερα Σήματα: «ΕΜΠΡΟΣ»: κάποιος στέκεται στο μπροστινό πατάκι «ΠΙΣΩ»: κάποιος στέκεται στο πίσω πατάκι «ΕΜΠΡΟΣ- ΠΙΣΩ»: έχει κάποιο άτομο και στο μπροστά και το πίσω πατάκι «ΠΟΥΘΕΝΑ»: δεν υπάρχει κανένας στα πατάκια 0

Παράδειγμα Αυτόματη Πόρτα (2/3) Καταστάσεις πόρτας «ΑΝΟΙΧΤΗ» «ΚΛΕΙΣΤΗ» ΠΙΣΩ ΕΜΠΡΟΣ - ΠΙΣΩ ΠΟΥΘΕΝΑ ΕΜΠΡΟΣ ΕΜΠΡΟΣ ΠΙΣΩ ΕΜΠΡΟΣ - ΠΙΣΩ ΚΛΕΙΣΤΗ ΑΝΟΙΧΤΗ ΠΟΥΘΕΝΑ Διάγραµµα Καταστάσεων Αυτόµατης Πόρτας

Παράδειγμα Αυτόματη Πόρτα (3/3) ΠΙΣΩ ΕΜΠΡΟΣ - ΠΙΣΩ ΠΟΥΘΕΝΑ ΕΜΠΡΟΣ ΕΜΠΡΟΣ ΠΙΣΩ ΕΜΠΡΟΣ - ΠΙΣΩ ΚΛΕΙΣΤΗ ΑΝΟΙΧΤΗ ΠΟΥΘΕΝΑ ΠΟΥΘΕΝΑ ΕΜΠΡΟΣ ΠΙΣΩ ΕΜΠΡΟΣ- ΠΙΣΩ ΚΛΕΙΣΤΗ ΚΛΕΙΣΤΗ ΑΝΟΙΧΤΗ ΚΛΕΙΣΤΗ ΚΛΕΙΣΤΗ ΑΝΟΙΧΤΗ ΚΛΕΙΣΤΗ ΑΝΟΙΧΤΗ ΑΝΟΙΧΤΗ ΑΝΟΙΧΤΗ 2

Παράδειγμα Διασταύρωση (/3) Μια σιδηροδρομική γραμμή διασταυρώνεται με κάποιο δρόμο Τ Π Ε Τ: τραίνο Π: πύλη Ε: Ελεγκτής Ένας ελεγκτής πρέπει να κλείνει την πύλη κάθε φορά που το τραίνο πλησιάζει: Όταν δεν υπάρχει τραίνο κοντά στον δρόμο η πύλη μπορεί & πρέπει να είναι ανοικτή Όταν πλησιάζει κάποιο τραίνο στον δρόμο, αν η πύλη είναι ανοικτή πρέπει να κλείσει & αν είναι κλειστή πρέπει να παραμείνει κλειστή Όταν το τραίνο απομακρύνεται & η πύλη είναι κλειστή τότε μπορεί να ανοίξει

Παράδειγμα Διασταύρωση (2/3) Καταστάσεις ελεγκτή Κλείσε την πύλη: close Άνοιξε την πύλη: open Μηνύματα προς ελεγκτή Το τραίνο πλησιάζει: train_approaching Το τραίνο φεύγει: train_leaving Δεν υπάρχει τραίνο: no_train no_train train_leaving no_train train_leaving open close train_approaching train_approaching

Παράδειγμα Διασταύρωση (3/3) Καταστάσεις ελεγκτή Μηνύματα προς ελεγκτή Κλείσε την πύλη: close Άνοιξε την πύλη: open Διάγραμμα Καταστάσεων Το τραίνο πλησιάζει: train_approaching Το τραίνο φεύγει: train_leaving Δεν υπάρχει τραίνο: no_train no_train train_leaving no_train train_leaving open close train_approaching Πίνακας Μεταβάσεων: train_approaching no_train train_approaching train_leaving open open close open close open close open

Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Παράδειγμα-Αναγνώριση συμβολοσειρών Θέλουμε να αναγνωρίσουμε κατά πόσο μια ακολουθία τελειώνει στη συμβολοσειρά «μαι» Καταστάσεις Έχω δει συμβολοσειρά που τελειώνει σε «μ»: είδα μ Έχω δει συμβολοσειρά που τελειώνει σε «μα»: είδα μα Έχω δει συμβολοσειρά που τελειώνει σε «μαι»: είδα μαι Η συμβολοσειρά που έχω δει δεν τελειώνει σε κανένα από τα πιο πάνω: κανένα

Διάγραμμα Καταστάσεων (/3) 0 0 q q 2 q 3 0, Διάγραμμα τριών καταστάσεων {q,q 2,q 3 } Εναρκτήρια κατάσταση υποδεικνύεται με βέλος Τελική κατάσταση ή κατάσταση υποδοχής η q 2 Μεταβάσεις από την μια κατάσταση στην άλλη απεικονίζονται με βέλη. Έξοδος αποδοχή ή απόρριψη: αν μετά την επεξεργασία δοθέντος λέξης φτάσουμε σε τελική τότε αποδεχόμαστε π.χ. Πως τρέχει το αυτόματο στην λέξη 0;

. Ξεκινάει από την κατάσταση q 2. Διαβάζει και μεταβαίνει από την κατάσταση q στην q 2 3. Διαβάζει και μεταβαίνει από την κατάσταση q 2 στην q 2 4. Διαβάζει 0 και μεταβαίνει από την κατάσταση q 2 στην q 3 5. Διαβάζει και μεταβαίνει από την κατάσταση q 3 στην q 2 6. Αποδέχεται, διότι κατά την ολοκλήρωση της εισόδου βρίσκεται σε κατάσταση αποδοχής, την q 2 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Διάγραμμα Καταστάσεων (2/3) 0 0 0 q q 2 q 3 0,

Διάγραμμα Καταστάσεων (3/3) 0 0 q q 2 q 3 0, Πειραματιζόμενοι με διάφορες λέξεις εισόδου, διαπιστώνουμε ότι το συγκεκριμένο αυτόματο αποδέχεται π.χ. τις λέξεις,0,, και 00000 Γενικότερα το αυτόματα αποδέχεται όλες τις λέξεις που τελειώνουν σε, αφού οποτεδήποτε διαβάζει το σύμβολο μεταβαίνει κατάσταση αποδοχής. Επιπλέον αποδέχεται τις λέξεις 00, 000, 0000, και 00000000 και κάθε λέξη που τελειώνει με το σύμβολο ακολουθούμενο από άρτιο πλήθος από 0, ενώ απορρίπτει άλλες λέξει όπως 0, 0, 0000 (Με βάση τις παρατηρήσεις-> πεγραφή γλώσσας)

2 Πεπερασμένα Αυτόματα Ορισμό ΟΡΙΣΜΟΣ Πεπερασμένο αυτόματο είναι μια πεντάδα στοιχειων (Q, Σ, δ, q O, F), όπου. Q είναι ένα πεπερασμένο σύνολο, τα στοιχεία του οποίου ονομάζονται καταστάσεις, 2. Σ είναι ένα πεπερασμένο σύνολο, που ονομάζεται αλφάβητο, 3. δ: Q x Σ Q, είναι η συνάρτηση μεταβάσεων, (π.χ. δ(p,)=q) 4. q O Q είναι η εναρκτήρια κατάσταση (αρχική κατάσταση), 5. F Q είναι το σύνολο των καταστάσεων αποδοχής (τελικές καταστάσεις) Πεπερασμένα αυτόματα, ντετερμινιστικά αυτόματα, deterministic automata, DFA

Παράδειγμα Πεπερασμένου Αυτομάτου M = Q, Σ, δ, q O, F, όπου Q = {q, q 2, q 3 } Σ = {0,} η συνάρτηση μεταβάσεων δ περιγράφεται στον πίνακα δ 0 q q q 2 εναρκτήρια κατάσταση είναι η q και F = {q 2 } q 2 q 3 q 3 q 2 q 2 q 2 0 0 q q 2 q 3 0, 2

Επεξεργασία Αυτομάτων Έστω μια λέξη w=w w 2 w n. Όταν το αυτόματο Μ λάβει την λέξη w την επεξεργάζεται ως εξής: Ξεκινώντας από την εναρκτήρια κατάσταση τo αυτόματο λαμβάνει τα σύμβολα της λέξης ένα προς ένα Μετά από την ανάγνωση κάθε συμβόλου, το αυτόματο μεταβαίνει από την τρέχουσα κατάσταση σε μία καινούρια κατάσταση επιλέγοντας τη μετάβαση που επιγράφεται με το συγκεκριμένο σύμβολο. Μετά από την επεξεργασία και του τελευταίου συμβόλου το αυτόματο παράγει μια έξοδο: Αν βρίσκεται σε κατάσταση αποδοχής, η έξοδος είναι αποδοχή Διαφορετικά η έξοδος είναι απόρριψη Παράδειγμα 0 q q 2 q 3 0 Λέξη 000: Απόρριψη Λέξη 00: Αποδοχή Λέξη 000000: Αποδοχή 0, 2

Ορολογία Γλώσσα του αυτομάτου Μ, L(M): το σύνολο όλων των λέξεων του αποδέχεται το αυτόματο Μ Αν L(M) = Α τότε λέμε ότι το Μ αναγνωρίζει την Α Κάθε αυτόματο αποδέχεται πολλές λέξεις αλλά αναγνωρίζει μια μόνο γλώσσα Ποια η γλώσσα του αυτόματου M ; 0 0 q q 2 q 3 L(M ) = {w : η w περιέχει τουλάχιστον ένα σύμβολο και το τελευταίο ακολουθείται από άρτιο αριθμό 0} 0, 2

Μ 2 =({q, q 2 }, {0, }, δ, q, {q 2 }) Παράδειγμα δ 0 Διάγραμμα Καταστάσεων: q q q 2 q 2 q q 2 0 q q 2 L(M 2 ) = ;; Δοκιμάζουμε κάποιες λέξεις εισόδου 0,, 00, 00, 00 L(M 2 ) = {w : w τελειώνει σε } 0 2

Βιβλιογραφία Μ 3 =({q, q 2 }, {0, }, δ, q, {q }) δ 0 q q q 2 q 2 q q 2 Διάγραμμα Καταστάσεων: 0 q q 2 0 L(M 3 ) = ;; L(M 3 ) = {w : w τελειώνει σε 0 ή έχει μήκος 0} * Αποδέχεται την κενή λέξη ε 2

Ορισμός του υπολογισμού To αυτόματο M = Q, Σ, δ, q O, F αποδέχεται μια λέξη w = w w 2 w n Σ n αν υπάρχει ακολουθία καταστάσεων r 0, r,, r n του Q που να ικανοποιεί τις συνθήκες:. r 0 = q O 2. δ(r i, w i+ ) = r i+, για i = 0,,n, και 3. r n F. Η συνθήκη ορίζει ότι το αυτόματο ξεκινά από την εναρκτήρια κατάστασ 2. Η συνθήκη 2 ορίζει ότι το αυτόματο μεταβαίνει από κατάσταση σε κατάσ σύμφωνα με τη συνάρτηση μεταβάσεων 3. Η συνθήκη 3 ορίζει ότι το αυτόματο καταλήγει σε κατάσταση αποδοχής Λέμε το αυτόματο Μ αναγνωρίζει τη γλώσσα Α αν: A = {w : το Μ αποδέχεται την w} 2

2 Κανονική Γλώσσα ΟΡΙΣΜΟΣ Μια γλώσσα λέγεται κανονική αν υπάρχει πεπερασμένο αυτόματο που να την αναγνωρίζει

2 Σχεδίαση Αυτομάτων (/3) Πρόβλημα: Δοθείσας μιας γλώσσας σχεδιάστε ένα αυτόματο που να την αναγνωρίζει Παράδειγμα : Α = {w : w έχει άρτιο αριθμό από } Βήμα : Καθορισμός καταστάσεων Έλεγχος κάθε συμβόλου και αν το τμήμα της λέξης που εξετάστηκε ανήκει ή όχι στη γλώσσα Καθορισμός πληροφοριών που πρέπει να θυμόμαστε:. είτε ο αριθμός των που διαβάσαμε είναι άρτιος 2. είτε ο αριθμός των που διαβάσαμε είναι περιττός Αποδίδουμε σε κάθε περίπτωση μια κατάσταση q άρτιο q περιττό

Σχεδίαση Αυτομάτων (2/3) Βήμα 2: Καθορισμός Μεταβάσεων Με βάση το πώς πρέπει να μετακινηθούμε μετά την ανάγνωση ενός συμβόλου Ανάγνωση 0: αριθμός δεν αλλάζει άρα μένουμε στην ίδια κατάσταση Ανάγνωση : αριθμός αλλάζει άρα αν είμαστε στο q άρτιο πάμε q περιττό και ανάποδα 0 0 q άρτιο q περιττό 2

Σχεδίαση Αυτομάτων (3/3) Βήμα 3: Καθορισμός εναρκτήριας κατάστασης Αντιστοιχεί στην περίπτωση της λέξης με 0 σύμβολα Εναρκτήρια το q άρτιο αφού σε 0 σύμβολα το πλήθος των είναι άρτιο Βήμα 4: Καθορισμός Τελικών Καταστάσεων Στην περίπτωσή μας το q άρτιο 0 0 q άρτιο q περιττό 3

Πράξεις σε Κανονικές Γλώσσες Έστω δυο γλώσσες Α και Β: Ένωση: Συναρμογή (Σύμπτυξη): Σώρευση: = Η πράξη της ένωσης είναι γνωστή παίρνοντας όλες τις λέξεις, τόσο από το Α όσο και της Β κα συγκεντρώνει σε μια γλώσσα Η πράξη της συναρμογής είναι κάπως πιο περίπλοκη για να σχηματίσει τις λέξεις της νέας γλώσ επισυνάπτει μια λέξη της Β μετά από μια λέξη της Α για όλα τα δυνατά ζεύγη τέτοιων λέξεων Η πράξη της συσσώρευσης είναι μονομελής πράξη και όχι διμελής. Για να σχηματίσει μια λέξη νέας γλώσσα, συνάπτει μεταξύ του οποιοδήποτε πλήθος λέξεων της Α τη μια κατόπιν της άλ συμπεριλαμβανόμενης και της κενής λέξη ε 3

3 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Παράδειγμα Έστω Σ τα αλφάβητο με 24 γράμματα {α,β,γ,.,ω). Εάν ορίσουμε Α={καλό, κακό} και Β={αγόρι, κορίτσι}, τότε Α Β={καλό, κακό, αγόρι, κορίτσι} ΑΒ={καλόαγόρι, καλόκορίτσι, κακοαγόρι, κακόκορίτσι}, και Α*={ε,καλό,κακό,καλόκαλό, καλόκακό,κακόκαλό, κακοκακό, καλόκαλόκαλό, καλόκαλόκακό, καλόκακόκαλό, καλόκακόκακό, }

3 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Βιβλιογραφία H.R. Lewis, Χ. Παπαδημητρίου, "Στοιχεία θεωρίας υπολογισμού", η έκδοση/2005, Εκδόσεις Κριτική, ISBN: 978-960-28-397-7 Κωδικός Βιβλίου στον Εύδοξο: 776 2. M. Sipser, "Εισαγωγή στη Θεωρία Υπολογισμού", η έκδοση/2009, Εκδόσεις ΙΤΕ-Πανεπιστημιακές Εκδόσεις Κρήτης, ISBN: 978-960-524-243-5 Κωδικός Βιβλίου στον Εύδοξο: 257 Επιπλέον συνιστώμενη βιβλιογραφία E. Rich, "Automata, Computability and Complexity: Theory and Applications", st edition/2007, Prentice Hall, ISBN: 978-032288064 J. E. Hopcroft, R. Motwani, J. D. Ullman, "Introduction to Automata Theory, Languages, and Computation", 3rd edition/2006, Prentice Hall, ISBN: 978-032455369 J. Hopcroft, R. Motwani, J. Ullman, Intoduction to Automata Theory, Languages and Computation, 2nd ed., Pearson - Addison Wesley, 2003 M. Sipser, Εισαγωγή στη Θεωρία Υπολογισμού, Πανεπιστημιακές Εκδόσεις Κρήτης, 2007

3 34 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Σημείωμα Μαθήματα στο Αναφοράς ΤΕΙ Ηπείρου Copyright Τεχνολογικό Ίδρυμα Ηπείρου. Αλέξανδρος Τζάλλας. Θεωρία Υπολογισμού. Έκδοση:.0 Άρτα, 205. Διαθέσιμο από τη δικτυακή διεύθυνση: http://eclass.teiep.gr/courses/comp2/

Σημείωμα Μαθήματα Αδειοδότησης στο ΤΕΙ Ηπείρου Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 4.0 Διεθνές [] ή μεταγενέστερη. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, Διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό και τα οποία αναφέρονται μαζί με τους όρους χρήσης τους στο «Σημείωμα Χρήσης Έργων Τρίτων». Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί. [] http://creativecommons.org/licenses/by-nc-nd/4.0/deed.el 3

3 Θεωρία Υπολογισμού Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις, Τμήμα Μηχανικών Πληροφορικής, ΤΕΙ ΗΠΕΙΡΟΥ - Ανοιχτά Ακαδημαϊκά Τέλος Ενότητας Επεξεργασία: Ευάγγελος Καρβούνης Άρτα, 205

3 Τέλος Ενότητας Ντετερμινιστικά Πεπερασμένα Αυτόματα, Κανονικές Πράξεις