Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και...

34
1 ΤΜΗΜΑ ΜΠΕΣ Διακριτά Μαθηματικά ΙI Μηχανές Πεπερασμένων Καταστάσεων Κώστας Στεργίου Λέκτορας Τμήμα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου e-mail: [email protected]

description

Επεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

Transcript of Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και...

Page 1: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

1ΤΜΗΜΑ ΜΠΕΣ

Διακριτά Μαθηματικά ΙIΜηχανές Πεπερασμένων

ΚαταστάσεωνΚώστας Στεργίου

Λέκτορας

Τμήμα Μηχανικών

Πληροφοριακών & Επικοινωνιακών Συστημάτων

Πανεπιστήμιο Αιγαίου

e-mail: [email protected]

Page 2: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

2ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Επεξεργασίας Πληροφοριών

Με τον όρο μηχανή επεξεργασίας πληροφοριών εννοούμε μια μηχανή που δέχεται ένα σύνολο από σήματα εισόδου και παράγει ένα αντίστοιχο σύνολο από σήματα εξόδου

Μηχανή

Επεξεργασίας

Πληροφοριών

Σήματα

Εισόδου

Σήματα

Εξόδου

Page 3: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

3ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Επεξεργασίας Πληροφοριών

Παραδείγματα μηχανών επεξεργασίας πληροφοριών Λάμπα γραφείου

σήματα εισόδου: ΠΑΝΩ/ΚΑΤΩ σήματα εισόδου: ΦΩΣ/ΣΚΟΤΑΔΙ

Αθροιστής σήματα εισόδου: δύο δεκαδικοί αριθμοί σήματα εισόδου: το άθροισμα τους

Αυτοκίνητο σήματα εισόδου: πίεση στο γκάζι, γωνία τιμονιού σήματα εισόδου: ταχύτητα, κατεύθυνση

Αυτόματος πωλητής καφέ σήματα εισόδου: νομίσματα, επιλογή καφέ σήματα εισόδου: ποτήρι καφέ, ρέστα

Page 4: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

4ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Επεξεργασίας Πληροφοριών

Τα σήματα εισόδου σε μια μηχανή επεξεργασίας πληροφοριών μεταβάλλονται με το χρόνο

τα σήματα εξόδου πρέπει να μεταβάλλονται αντίστοιχα Μια μηχανή επεξεργασίας πληροφοριών δέχεται μια χρονική

ακολουθία σημάτων εισόδου και παράγει μια αντίστοιχη χρονική ακολουθία σημάτων εξόδου

Παράδειγμα: Για την παρακάτω ακολουθία σημάτων εισόδου μιας λάμπας

ΠΑΝΩ ΚΑΤΩ ΚΑΤΩ ΠΑΝΩ ΚΑΤΩ ΠΑΝΩ ΠΑΝΩ ...

Παράγεται η εξής ακολουθία σημάτων εξόδου

ΦΩΣ ΣΚΟΤΑΔΙ ΣΚΟΤΑΔΙ ΦΩΣ ΣΚΟΤΑΔΙ ΦΩΣ ΦΩΣ

Page 5: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

5ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Επεξεργασίας Πληροφοριών

Παράδειγμα: Για την παρακάτω ακολουθία σημάτων εισόδου ενός αθροιστή

3 5 0 3 3 9 2 ...

4 4 6 1 4 5 5 ...

Παράγεται η εξής ακολουθία σημάτων εξόδου

7 9 6 4 7 14 7 ...

Τα δύο προηγούμενα είναι παραδείγματα μηχανών χωρίς μνήμη Το σήμα εξόδου κάθε χρονικής στιγμής εξαρτάται μόνο από το

σήμα εισόδου εκείνης της στιγμής κι όχι από τις προηγούμενες εισόδους

Page 6: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

6ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Επεξεργασίας Πληροφοριών

Σε μια μηχανή με μνήμη το σήμα εξόδου κάθε στιγμή μπορεί να εξαρτάται όχι μόνο από το σήμα εισόδου εκείνης της στιγμής, αλλά κι από προηγούμενα σήματα εισόδου

η μηχανή “μπορεί να θυμάται” τι έγινε στο παρελθόν αλλά όχι βέβαια τα πάντα που έχουν γίνει στο παρελθόν!

Παράδειγμα: Ο αυτόματος πωλητής καφέ δέχεται ως είσοδο κέρματα των 10, 20, και 50 λεπτών κι ένας καφές κοστίζει 60 λεπτά. Για την παρακάτω ακολουθία σημάτων εισόδου

20 20 20 50 50 10 50 10

Παράγεται η εξής ακολουθία σημάτων εξόδου

ΤΙΠΟΤΑ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ ΚΑΦΕΣ ΤΙΠΟΤΑ

Page 7: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

7ΤΜΗΜΑ ΜΠΕΣ

Καταστάσεις

Για να περιγράψουμε τα γεγονότα του παρελθόντος, εισάγουμε την έννοια της κατάστασης

μια κατάσταση αντιπροσωπεύει την “περίληψη” του παρελθόντος της μηχανής

Παράδειγμα: Στον αυτόματο πωλητή καφέ υπάρχουν πιθανές 7 καταστάσεις που καθορίζουν το συνολικό ποσό που έχει εισαχθεί από την τελευταία πώληση καφέ:

0 10 20 30 40 50 60 >60

Σε οποιαδήποτε στιγμή η κατάσταση και τα σήματα εισόδου εκείνη τη στιγμή θα καθορίσουν την έξοδο

Παράδειγμα: Αν η κατάσταση είναι 50 και η είσοδος 10 τότε η έξοδος είναι ΚΑΦΕΣ

Page 8: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

8ΤΜΗΜΑ ΜΠΕΣ

Καταστάσεις

Καθώς έρχονται νέα σήματα εισόδου, η μηχανή μπορεί να αλλάζει κατάσταση (για να ανανεώνει την περίληψη της ιστορίας της)

Σε οποιαδήποτε στιγμή η κατάσταση εξαρτάται από τα σήματα εισόδου εκείνη τη στιγμή και από την προηγούμενη κατάσταση

Συνολικό ποσό

Είσοδος

10 λεπτά 20 λεπτά 50 λεπτά

0 10 20 50

10 20 30 60

20 30 40 60

30 40 50 60

40 50 60 60

50 60 60 60

60 10 20 50

Συνολικό ποσό

Έξοδος

0 ΤΙΠΟΤΑ

10 ΤΙΠΟΤΑ

20 ΤΙΠΟΤΑ

30 ΤΙΠΟΤΑ

40 ΤΙΠΟΤΑ

50 ΤΙΠΟΤΑ

60 ΚΑΦΕΣ

Παράδειγμα: Συμπεριφορά αυτόματου πωλητή καφέ

Page 9: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

9ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Πεπερασμένων Καταστάσεων

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

Μια τέτοια μηχανή ονομάζεται Μηχανή Πεπερασμένων Καταστάσεων π.χ. Αυτόματος πωλητής καφέ

Μια μηχανή με άπειρο αριθμό καταστάσεων ονομάζεται Μηχανή Απείρων Καταστάσεων

Παράδειγμα?

Εμείς θα ασχοληθούμε μόνο με μηχανές πεπερασμένων καταστάσεων

Page 10: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

10ΤΜΗΜΑ ΜΠΕΣ

Παράδειγμα

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

Τι πρέπει να αποθηκεύει?

Αν οι αριθμοί εισόδου κυμαίνονται σε ένα συγκεκριμένο διάστημα τότε η μηχανή έχει πεπερασμένες καταστάσεις

Αν δεν υπάρχει περιορισμός για το ποιος ακέραιος θα έρθει ως είσοδος τότε η μηχανή έχει άπειρες καταστάσεις

Page 11: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

11ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Πεπερασμένων Καταστάσεων

Μια Μηχανή Πεπερασμένων Καταστάσεων – ΜΠΚ (Finite State Machine) καθορίζεται από

Ένα πεπερασμένο σύνολο καταστάσεων SS = {ss0,ss1,ss2,…} Ένα ειδικό στοιχείο του συνόλου SS που ονομάζεται αρχική

κατάσταση Ένα πεπερασμένο σύνολο από γράμματα εισόδου II = {ii1,ii2,ii3,…}

Ένα πεπερασμένο σύνολο από γράμματα εξόδου OO = {oo1,oo2,oo3,…} Μια συνάρτηση ff από το SSI I στο SS, που ονομάζεται συνάρτηση

μετάβασης Μια συνάρτηση gg από το SS στο OO, που ονομάζεται συνάρτηση

εξόδου

Page 12: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

12ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Πεπερασμένων Καταστάσεων

Μια μηχανή πεπερασμένων καταστάσεων είναι ένα θεωρητικό εργαλείο για την περιγραφή μηχανών επεξεργασίας πληροφοριών και δυναμικών συστημάτων

Οι ΜΠΚ υπήρχαν πριν τη γέννηση της επιστήμης υπολογιστών Οι ΜΠΚ μας βοηθούν να δώσουμε ακριβείς περιγραφές και

ορισμούς συστημάτων σε αντίθεση με τη φυσική γλώσσα

Μια ΜΠΚ μπορεί να υλοποιηθεί σε υλικό ή σε λογισμικό

Page 13: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

13ΤΜΗΜΑ ΜΠΕΣ

Μηχανές Πεπερασμένων Καταστάσεων

Σε κάθε στιγμή μια μηχανή πεπερασμένων καταστάσεων βρίσκεται σε μια από τις καταστάσεις της

Όταν έλθει ένα γράμμα εισόδου, η μηχανή θα μεταβεί σε μια άλλη κατάσταση σύμφωνα με τη συνάρτηση μετάβασης

Σε κάθε κατάσταση, η μηχανή παράγει ένα γράμμα εξόδου σύμφωνα με τη συνάρτηση

εξόδου

Συνολικό ποσό Είσοδος

10 λεπτά 20 λεπτά 50 λεπτά

0 10 20 50

10 20 30 60

20 30 40 60

30 40 50 60

40 50 60 60

50 60 60 60

60 10 20 50

Συνολικό ποσό Έξοδος

0 ΤΙΠΟΤΑ

10 ΤΙΠΟΤΑ

20 ΤΙΠΟΤΑ

30 ΤΙΠΟΤΑ

40 ΤΙΠΟΤΑ

50 ΤΙΠΟΤΑ

60 ΚΑΦΕΣ

Παράδειγμα: αυτόματος πωλητής καφέ

Page 14: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

14ΤΜΗΜΑ ΜΠΕΣ

Αναπαράσταση μιας ΜΠΚ – Πίνακας

Μια ΜΠΚ μπορεί να αναπαρασταθεί με έναν πίνακα μετάβασης καταστάσεων κι έναν πίνακα εξόδου ή με τον συνδυασμό τους

Κατάσταση Είσοδος

a b c

S0 S1 S2 S5

S1 S2 S3 S6

S2 S3 S4 S6

S3 S4 S5 S6

S4 S5 S6 S6

S5 S6 S6 S6

S6 S1 S2 S5

Κατάσταση Έξοδος

S0 0

S1 0

S2 0

S3 0

S4 0

S5 0

S6 1

Κατάσταση Είσοδος Έξοδος

a b c

S0 S1 S2 S5 0

S1 S2 S3 S6 0

S2 S3 S4 S6 0

S3 S4 S5 S6 0

S4 S5 S6 S6 0

S5 S6 S6 S6 0

S6 S1 S2 S5 1

αρχική κατάσταση γράμματα εισόδουγράμματα εξόδου

σύνολο καταστάσεων

Page 15: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

15ΤΜΗΜΑ ΜΠΕΣ

γράφος μετάβασης καταστάσεων

πίνακας μετάβασης

καταστάσεων

πίνακαςεξόδου

Αναπαράσταση μιας ΜΠΚ - Γράφος

Μια ΜΠΚ μπορεί να αναπαρασταθεί με έναν γράφο μετάβασης καταστάσεων

Page 16: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

16ΤΜΗΜΑ ΜΠΕΣ

Παράδειγμα – Αυτόματος Πωλητής

Πως μπορεί να αναπαρασταθεί με γράφο η ΜΠΚ του αυτόματου πωλητή καφέ?

Κατάσταση Είσοδος Έξοδος

a b c

S0 S1 S2 S5 0

S1 S2 S3 S6 0

S2 S3 S4 S6 0

S3 S4 S5 S6 0

S4 S5 S6 S6 0

S5 S6 S6 S6 0

S6 S1 S2 S5 1

Page 17: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

17ΤΜΗΜΑ ΜΠΕΣ

ΜΠΚ ως Μοντέλα Φυσικών Συστημάτων

Παράδειγμα: Μετρητής Υπόλοιπου (modulo) 3 Δέχεται μια ακολουθία από 0,1,2 ως είσοδο και παράγει μια

ακολουθία από 0,1,2 ως έξοδο τέτοια ώστε σε κάθε στιγμή η έξοδος ισούται με το υπόλοιπο ως προς 3 όλων των ψηφίων που έχουν εισαχθεί μέχρι εκείνη τη στιγμή

Κατάσταση Είσοδος Έξοδος

0 1 2

Α A B C 0

Β B C A 1

C C A B 2

αρχική κατάσταση A/0

B/1

11

C/2

22

00

00

00

11

22

1122

Page 18: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

18ΤΜΗΜΑ ΜΠΕΣ

ΜΠΚ ως Μοντέλα Φυσικών Συστημάτων

Παράδειγμα: Σύγκριση 2 Δυαδικών Αριθμών Δέχεται δύο δυαδικούς αριθμούς και προσδιορίζει το μεγαλύτερο ή αν είναι

ίσοι. Τα ψηφία των αριθμών εισάγονται ένα προς ένα αρχίζοντας από τη μικρότερη δύναμη του 2. Δηλ. το αλφάβητο εισόδου είναι {00,01,10,11}

Κατάσταση Είσοδος

11

Έξοδος

00 01 10

Α A C B A ΙΣΟΙ

Β B C B B ΜΕΓΑΛ

C C C B C ΜΙΚΡΟΤ

αρχική κατάσταση

A/0

B/1

1100

C/2

000,110,11

000,01,110,01,11

000,10,110,10,11

0011

1010

0101

Page 19: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

19ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Μηχανές

Δύο ΜΠΚ είναι ισοδύναμες όταν παράγουν την ίδια ακολουθία εξόδου κάθε φορά που ξεκινούν από την ίδια αρχική κατάσταση και τροφοδοτούνται με την ίδια ακολουθία εισόδου

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β F D 0

C G E 0

D H B 0

E B F 1

F D H 0

G E B 0

H B C 1

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β C D 0

C D E 0

D E B 0

E B C 1

αρχική κατάσταση

Οι δύο μηχανές είναι ισοδύναμες

Page 20: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

20ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Μηχανές

Ποιος είναι ο γράφος για τον καθένα από τους παρακάτω πίνακες?

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β F D 0

C G E 0

D H B 0

E B F 1

F D H 0

G E B 0

H B C 1

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β C D 0

C D E 0

D E B 0

E B C 1

αρχική κατάσταση

Page 21: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

21ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Μηχανές - Παράδειγμα

Είναι οι παρακάτω μηχανές ισοδύναμες?

Page 22: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

22ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Καταστάσεις

Πως μπορούμε να προσδιορίσουμε αν δύο μηχανές είναι ισοδύναμες?

μπορούμε να συγκρίνουμε τις ακολουθίες εξόδου που παράγουν για όλες τις πιθανές ακολουθίες εισόδου?

Με δεδομένη κάποια ΜΠΚ μπορούμε να κατασκευάσουμε μια ισοδύναμη της με λιγότερες καταστάσεις (αν αυτό είναι δυνατό)?

πολύ σημαντικό στην κατασκευή ΜΠΚ με υλικό!

Δύο καταστάσεις ssii και ssjj μιας ΜΠΚ λέγονται ισοδύναμες αν για οποιαδήποτε ακολουθία εισόδου η μηχανή παράγει την ίδια ακολουθία εξόδου είτε ξεκινάει από την ssii είτε ξεκινάει από την ssjj

Page 23: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

23ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Καταστάσεις

Δύο ισοδύναμες καταστάσεις ssii και ssjj μπορούν να συμπτυχθούν σε μία χωρίς να αλλάξει η συμπεριφορά της μηχανής

αφαιρούμε την ssjj και κατευθύνουμε προς την ssii όλες τις μεταβάσεις που κατέληγαν στην ssjj

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β F D 0

C G E 0

D H B 0

E B F 1

F D H 0

G E B 0

H B C 1

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β C D 0

C D E 0

D E B 0

E B C 1

Οι C και F, D και G, E και H είναι ζεύγη

ισοδύναμων καταστάσεων

Page 24: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

24ΤΜΗΜΑ ΜΠΕΣ

Ισοδύναμες Καταστάσεις Τι αντιπροσωπεύει η ισοδυναμία καταστάσεων σε ένα φυσικό

σύστημα? καταστάσεις που αναπαριστούν ισοδύναμες περιλήψεις της ιστορίας της

ΜΠΚ

Κατάσταση Είσοδος Έξοδος

1 2

Α B C 0

Β F D 0

C G E 0

D H B 0

E B F 1

F D H 0

G E B 0

H B C 1

Οι C και F είναι καταστάσεις όπου το άθροισματων ψηφίων είναι πολλαπλάσιο του 4 + 2

Οι D και G, είναι καταστάσεις όπου το άθροισματων ψηφίων είναι πολλαπλάσιο του 4 + 3

Οι E και H είναι καταστάσεις όπου το άθροισματων ψηφίων είναι πολλαπλάσιο του 4

Η μηχανή δέχεται ακολουθίες από 1 και 2 καιπαράγει 1 αν το άθροισμα όλων των ψηφίων που έχει δεχθεί διαιρείται με το 4

Page 25: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

25ΤΜΗΜΑ ΜΠΕΣ

k-ισοδυναμία

Δύο καταστάσεις είναι 0-ισοδύναμες αν έχουν την ίδια έξοδο Δύο καταστάσεις είναι 1-ισοδύναμες αν έχουν την ίδια έξοδο

και για κάθε γράμμα εισόδου οι επόμενες καταστάσεις τους είναι 0-ισοδύναμες

Δύο καταστάσεις είναι k-ισοδύναμες αν έχουν την ίδια έξοδο και για κάθε γράμμα εισόδου οι επόμενες καταστάσεις τους είναι (k-1)-ισοδύναμες

αν δύο καταστάσεις ssii και ssjj είναι k-ισοδύναμες τότε για κάθε ακολουθία εισόδου μήκους k ή λιγότερο η μηχανή θα παράγει τις ίδιες ακριβώς ακολουθίες εξόδου, ασχέτως αν ξεκινάει από την ssii ή την ssjj

Page 26: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

26ΤΜΗΜΑ ΜΠΕΣ

k-ισοδυναμία

Για την δίπλα μηχανή, οι καταστάσεις A και C είναι 0-ισοδύναμες και οι καταστάσεις G και H είναι 1-ισοδύναμες

Δύο καταστάσεις είναι ισοδύναμες αν είναι k-ισοδύναμες για όλα τα k

Κατάσταση Είσοδος Έξοδος

0 1

Α B F 0

Β A F 0

C G A 0

D H B 0

E A G 0

F H C 1

G A D 1

H A C 1

Page 27: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

27ΤΜΗΜΑ ΜΠΕΣ

Σχέσεις Ισοδυναμίας

Αν δύο καταστάσεις ssii και ssjj είναι k-ισοδύναμες και οι ssii και sshh είναι k-ισοδύναμες τότε και οι ssjj και sshh είναι k-ισοδύναμες

Άρα μπορούμε να ορίσουμε μια σχέση ισοδυναμίας πάνω στο σύνολο όλων των καταστάσεων, ώστε δύο καταστάσεις να σχετίζονται αν είναι k-ισοδύναμες

η σχέση αυτή δημιουργεί μια διαμέριση του συνόλου των καταστάσεων η οποία συμβολίζεται πk

Κατάσταση Είσοδος Έξοδος

0 1

Α B F 0

Β A F 0

C G A 0

D H B 0

E A G 0

F H C 1

G A D 1

H A C 1

π0 = {ΑBCDE FGH}π1 = {ΑBE CD F GH}π2 = {ΑB CD E F GH}

Page 28: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

28ΤΜΗΜΑ ΜΠΕΣ

Υπολογισμών Σχέσεων Ισοδυναμίας

Θεώρημα: Δύο καταστάσεις βρίσκονται στο ίδιο σύμπλοκο στην πk αν και μόνο αν είναι στο ίδιο σύμπλοκο στην πk-1 και για οποιοδήποτε γράμμα εισόδου, οι ακόλουθες καταστάσεις τους είναι στο ίδιο σύμπλοκο στην πk-1

Το παραπάνω θεώρημα μας δίνει μια διαδικασία για τον υπολογισμό των διαμερίσεων π0, π1,..., πk διαδοχικά

Page 29: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

29ΤΜΗΜΑ ΜΠΕΣ

Υπολογισμών Σχέσεων Ισοδυναμίας

π0 = {ΑBCDE FGH} Α,Β,C,D,E έχουν την ίδια έξοδο F,G,H έχουν την ίδια έξοδο

Οι Α και Β είναι στο ίδιο σύμπλοκο στην π1 Για είσοδο 0 έχουν ακόλουθες καταστάσεις Β και

Α (που είναι στο ίδιο σύμπλοκο στην π0) Για είσοδο 0 έχουν ακόλουθη κατάσταση F

Οι Α και Ε είναι στο ίδιο σύμπλοκο στην π1 Είναι στο ίδιο σύμπλοκο στην π0

Οι ακόλουθες καταστάσεις για είσοδο 0 είναι Β και Α και για είσοδο 1 είναι F και G

Οι Α και C δεν είναι στο ίδιο σύμπλοκο στην π1

Γιατί?

Κατάσταση Είσοδος Έξοδος

0 1

Α B F 0

Β A F 0

C G A 0

D H B 0

E A G 0

F H C 1

G A D 1

H A C 1

Τελικά παίρνουμεπ1 = {ΑBE CD F GH}

Page 30: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

30ΤΜΗΜΑ ΜΠΕΣ

Υπολογισμών Σχέσεων Ισοδυναμίας

Με παρόμοιο τρόπο παίρνουμε π2 = {ΑBE CD F GH} και π3 = {ΑBE CD F GH}

Παρατηρήσεις: Αν η πk είναι ίση με την πk-1, τότε η πm είναι ίση με την πk-1 για όλα

τα mk (επειδή η πk+1 κατασκευάζεται από την πk με τον ίδιο τρόπο που κατασκευάζεται η πk από την πk-1) η διαδικασία κατασκευής σταματάει όταν δύο συνεχόμενες διαμερίσεις

είναι ακριβώς ίδιες Η είναι πk μια εκλέπτυνση της πk-1 (επειδή δύο καταστάσεις δεν

μπορεί να είναι k-ισοδύναμες αν δεν είναι (k-1)-ισοδύναμες) η διαδικασία κατασκευής δεν προχωράει πέρα από την πn-2, όπου n ο

αριθμός καταστάσεων

Page 31: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

31ΤΜΗΜΑ ΜΠΕΣ

Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας

Αλγόριθμος Υπολογισμού Διαμέρισης π0 : Πάρε κάθε ζευγάρι καταστάσεων ssii και ssjj στη ΜΠΚ

Αν η ssii δίνει διαφορετικές εξόδους από την ssjj, μάρκαρε τις ως μη-ισοδύναμες

Για κάθε ζευγάρι (ssii , ssjj) που δεν έχει ακόμα μαρκαριστεί, για κάθε είσοδο a, βρες το ζευγάρι καταστάσεων (g(ssii,a), g(ssjj,a))

Αν οι καταστάσεις g(ssii,a) και g(ssjj,a) έχουν μαρκαριστεί ως μη-ισοδύναμες, μάρκαρε τις ssii και ssjj ως μη-ισοδύναμες

Επανέλαβε μέχρι να μην είναι δυνατό περαιτέρω μαρκάρισμα Ζευγάρια καταστάσεων που δεν έχουν μαρκαριστεί είναι ισοδύναμα.

Απλοποίησε τη μηχανή (δηλ. δημιούργησε τη διαμέριση) ανάλογα

Page 32: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

32ΤΜΗΜΑ ΜΠΕΣ

Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας

Παράδειγμα Απλοποίησης:

Προκύπτει η διαμέριση π0 = {s1 s2s3 s4}

1ο βήμα

2ο βήμα

Page 33: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

33ΤΜΗΜΑ ΜΠΕΣ

Απλοποίηση μέσω Υπολογισμού Σχέσεων Ισοδυναμίας

Απλοποιημένη ΜΠΚ

Page 34: Eπεξήγηση Μηχανών Πεπερασμένων Καταστάσεων Και Ισοδυναμίες

34ΤΜΗΜΑ ΜΠΕΣ

Ντετερμινιστικές ΜΠΚ

Μια ΜΠΚ η οποία για κάθε κατάσταση έχει το πολύ μια μετάβαση από την κατάσταση αυτή προς κάποια άλλη για κάθε γράμμα εισόδου ονομάζεται ντετερμινιστική

Οποιαδήποτε άλλη ΜΠΚ ονομάζεται μη-ντετερμινιστική Κάθε μη-ντετερμινιστική ΜΠΚ μπορεί να μετατραπεί σε

ντετερμινιστική

0 1aa2 3

bb aa

a,ba,b

Μη-ντετερμινιστική ΜΠΚ