Συνεπείς καθολικές καταστάσεις & επιβεβαίωση ιδιοτήτων. Κατανεμημένα Συστήματα 1

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

Download "Συνεπείς καθολικές καταστάσεις & επιβεβαίωση ιδιοτήτων. Κατανεμημένα Συστήματα 1"

Transcript

1 Συνεπείς καθολικές καταστάσεις & επιβεβαίωση ιδιοτήτων Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr

2 Λογικά συνεπείς τομές Τμήμα τοπικής ιστορίας: h i.k {e i.1,e i.2,e i.k } τμήμα της τοπικής εκτέλεσης στην διεργασία P i που συμπεριλαμβάνει μέχρι και το k-οστό γεγονός Τομή: C h 1.k1 h 2.k2 h N.kN ένωση τμημάτων ιστορίας όλων των διεργασιών Λογικά συνεπής τομή: e C, e' e e' C μια συνεπής τομή δεν περιέχει ένα γεγονός χωρίς να περιέχει όλα τα λογικά προηγούμενο του Η έννοια της συνεπούς τομής είναι η «κατανεμημένη επέκταση» της έννοιας του τμήματος τοπικής ιστορίας Κατανεμημένα Συστήματα 2 lalis@inf.uth.gr

3 P1 e 1.1 e 1.2 e 1.3 e 1.4 P2 e 2.3 m2 e 2.1 e 2.2 m3 P3 e 3.1 e 3.2 e C 3.3 C' τομή C είναι συνεπής τομή C' δεν είναι συνεπής Κατανεμημένα Συστήματα 3 lalis@inf.uth.gr

4 Συνεπείς τομές και καθολικές καταστάσεις Κάθε τομή C ορίζει / αντιστοιχεί σε μια καθολική κατάσταση S=state(C) του συστήματος η S αποτελείται από τις τοπικές καταστάσεις των διεργασιών μετά από εκτέλεση των γεγονότων που ανήκουν στην τομή C Κάθε συνεπής τομή αντιστοιχεί σε μια συνεπή καθολική κατάσταση: C συνεπής state(c) συνεπής Μια συνεπής κατάσταση αντιστοιχεί σε μια πιθανή πραγματική κατάσταση του συστήματος μπορούμε να υποθέσουμε ότι η κατάσταση όντως ισχύει, χωρίς να αντιφάσκουμε με την λογική σχέση των γεγονότων Αντίστροφα, μια μη-συνεπής κατάσταση σίγουρα δεν υπήρξε αληθής στην πραγματική εκτέλεση αντιφάσκει με την λογική σχέση των γεγονότων Κατανεμημένα Συστήματα 4 lalis@inf.uth.gr

5 Λογικά συνεπείς εκτελέσεις Εκτέλεση: μια «συνεχής» ακολουθία τομών C 0, C 1, C 2,, όπου C k+1 C k e Κάθε εκτέλεση C 0, C 1, C 2, αντιστοιχεί σε μια ακολουθία S 0, S 1, S 2,, όπου S k =state(c k ) Συνεπής εκτέλεση: μια εκτέλεση C 0, C 1, C 2,, όπου κάθε C k (συνεπώς κάθε S k ) είναι συνεπής Για κάθε κατανεμημένη εκτέλεση υπάρχουν συνήθως πολλές λογικά συνεπείς εκτελέσεις αλλά μόνο μια αντιστοιχεί στην πραγματική εκτέλεση Κατανεμημένα Συστήματα 5 lalis@inf.uth.gr

6 Πλέγμα καθολικών συνεπών καταστάσεων Οι συνεπείς καταστάσεις μιας κατανεμημένης εκτέλεσης μπορεί να διαταχθούν σε ένα πλέγμα (γράφο) Η κατάσταση S=state(C) είναι στο επίπεδο level(s)=l αν η αντίστοιχη τομή C συμπεριλαμβάνει L γεγονότα Οι S=state(C) και S'=state(C'), με level(s)=level(s')+1, συνδέονται μεταξύ τους μέσω μιας ακμής αν C' C e Κάθε συνεπής εκτέλεση C 0, C 1, C 2, αντιστοιχεί σε μια διαδρομή κατά μήκος των ακμών του πλέγματος των συνεπών καθολικών καταστάσεων αρχίζοντας από το επίπεδο 0 και περνώντας μέσα από (μόνο) μια κατάσταση για κάθε επόμενο επίπεδο Κατανεμημένα Συστήματα 6 lalis@inf.uth.gr

7 P1 e 1.1 e 1.2 e 1.3 e 1.4 m1 m2 P2 e 2.1 e 2.2 e 2.3 Κατανεμημένα Συστήματα 7 lalis@inf.uth.gr

8 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 Level 6 Level 7 S32 S43 S33 S23 Κατανεμημένα Συστήματα 8 lalis@inf.uth.gr

9 Παθητική κατασκευή συνεπών εκτελέσεων μέσω ειδοποιήσεων Βλέπε φυσικά/λογικά ρολόγια Κάθε γεγονός λαμβάνει χρονοσφραγίδα, και στέλνεται ειδοποίηση στον παρατηρητή Ο παρατηρητής λαμβάνει υπόψη του τα γεγονότα για τα οποία λαμβάνει ειδοποίηση, για να σχηματίσει την «επόμενη» καθολική κατάσταση Αν ο παρατηρητής ακολουθήσει τους κανόνες σειριοποίησης, θα κατασκευάσει διαδοχικές καθολικές καταστάσεις που θα είναι εγγυημένα συνεπείς Δηλαδή θα παρατηρήσει μια συνεπή εκτέλεση Κατανεμημένα Συστήματα 9 lalis@inf.uth.gr

10 Διανυσματικά ρολόγια P1 P2 1,0 2,0 3,0 4,3 e 1.1 e 1.2 e 1.3 e 1.4 m1 m2 e 2.1 e 2.2 e 2.3 2,1 2,2 2,3 S00 S10 S20,S30 S31 S32,S33 S43 στιγμές κατασκευής Κατανεμημένα Συστήματα 10 lalis@inf.uth.gr

11 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη εκτέλεση Level 6 S33 t Level 7 S43 Κατανεμημένα Συστήματα 11 lalis@inf.uth.gr

12 Ρολόγια Lamport (υποθέτουμε FIFO) P1 P e 1.1 e 1.2 e 1.3 e 1.4 m1 m2 e 2.1 e 2.2 e S00 S10 S20,S30,S31 S32 S33,S43 στιγμές κατασκευής Κατανεμημένα Συστήματα 12 lalis@inf.uth.gr

13 Level 0 S00 Level 1 Level 2 Level 3 S10 S20 S30 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη εκτέλεση Level 6 S33 Level 7 S43 Κατανεμημένα Συστήματα 13 lalis@inf.uth.gr

14 Φυσικά ρολόγια (με T max = 5, συγχρονισμένο ρολόι και για τον εξωτερικό παρατηρητή) P1 P e 1.1 e 1.2 e 1.3 e 1.4 m1 m e 2.1 e 2.2 e 2.3 S00 S10 S20 S21 S31 S32 S33 S43 στιγμές κατασκευής Κατανεμημένα Συστήματα 14 lalis@inf.uth.gr

15 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη εκτέλεση Level 6 S33 Level 7 S43 Κατανεμημένα Συστήματα 15 lalis@inf.uth.gr

16 Ενεργητική κατασκευή στιγμιότυπων Οι διεργασίες εκτελούνται χωρίς να ενημερώνουν συνεχώς τον παρατηρητή για τα τοπικά τους γεγονότα Ο ίδιος ο παρατηρητής αποφασίζει να κατασκευάσει μια καθολική κατάσταση/στιγμιότυπο της εκτέλεσης Ζητά τις διεργασίες να στείλουν την κατάσταση τους Συνθέτει τις καταστάσεις σε μια καθολική κατάσταση Προφανώς, το ζητούμενο είναι να κατασκευαστεί μια καθολική κατάσταση που είναι εγγυημένα συνεπής Στην συνέχεια υποθέτουμε επικοινωνία FIFO Κατανεμημένα Συστήματα 16

17 Απλοϊκή προσπάθεια Ο παρατηρητής στέλνει μήνυμα record σε όλες τις διεργασίες, και περιμένει απάντηση Όταν μια διεργασία λαμβάνει το μήνυμα record, καταγράφει άμεσα την τοπική της κατάσταση, και την στέλνει πίσω στον παρατηρητή Ο παρατηρητής περιμένει να λάβει απάντηση από κάθε διεργασία, και κατασκευάζει μια καθολική κατάσταση με βάση τις τοπικές καταστάσεις που έλαβε Πρόβλημα: η κατάσταση που κατασκευάζεται δεν αντιστοιχεί απαραίτητα σε μια συνεπή τομή, άρα δεν είναι εγγυημένα συνεπής Κατανεμημένα Συστήματα 17

18 locally recorded state C P1 P2 e 1.1 e 1.2 e 1.3 e 1.4 S1? m1 S1? e e m2 e 2.3 S?2 rec S?2 S12 Κατανεμημένα Συστήματα 18 lalis@inf.uth.gr

19 Level 0 S00 Level 1 Level 2 Level 3 S10 S20 S11 S30 S21 S12 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη κατάσταση Level 6 S33 t Level 7 S43 Κατανεμημένα Συστήματα 19 lalis@inf.uth.gr

20 Ανασταλτικός αλγόριθμος δύο φάσεων Ο παρατηρητής στέλνει μήνυμα record σε όλες τις διεργασίες, και περιμένει απάντηση Όταν μια διεργασία λάβει το μήνυμα record, σταματά να στέλνει μηνύματα, καταγράφει την κατάσταση της, και την στέλνει στον παρατηρητή Όταν ο παρατηρητής λάβει τις καταγεγραμμένες καταστάσεις από όλες τις διεργασίες, στέλνει ένα μήνυμα continue σε όλες τις διεργασίες Όταν μια διεργασία λάβει το μήνυμα continue, συνεχίζει την αποστολή μηνυμάτων Μειονέκτημα: μπλοκάρισμα της επικοινωνίας (και πιθανώς της εκτέλεσης) των διεργασιών, μέχρι να ολοκληρωθεί η διαδικασία συλλογής Κατανεμημένα Συστήματα 20

21 Ορθότητα Έστω πως η κατάσταση S i που κατέγραψε η P i δεν περιέχει το γεγονός send(m), ενώ η κατάσταση S j που κατέγραψε η P j περιέχει το γεγονός recv(m) Αφού η S i δεν περιέχει το send(m), τότε η P i έστειλε το m στην P j αφού κατέγραψε την κατάσταση της Για να συνεχίσει η P i την εκτέλεση της, και να στείλει το m, πρέπει προηγουμένως να έλαβε το continue Για να στείλει ο παρατηρητής continue πρέπει να έχει λάβει τις τοπικές καταστάσεις από όλες τις διεργασίες Τότε, η κατάσταση έλαβε ο παρατηρητής από την P j δεν μπορεί να περιέχει το γεγονός recv(m) Άτοπο! Κατανεμημένα Συστήματα 21 lalis@inf.uth.gr

22 Init: recording = false; On received(<rec>): if (!recording) { recording = true; S = recordstate(); send(observer,<state,myid,s>); } On received(<cont>): if (recording) { recording = false; } app-send(p,msg): while (recording) {} /* block */ send(p,msg); Init(procs): grp = procs; Sglob; record(): Sglob = {}; for-each p in grp { send(p,<rec>); } for-each p in grp { recv(<state,p,sloc>); Sglob = Sglob + Sloc; } for-each p in grp { send(p,<cont>); } Κατανεμημένα Συστήματα 22 lalis@inf.uth.gr

23 Κατασκευή με φυσικά ρολόγια Οι διεργασίες διαθέτουν συγχρονισμένα ρολόγια και υπάρχει άνω όριο μετάδοσης ενός μηνύματος Tmax Ο παρατηρητής στέλνει μήνυμα record<t> σε όλες τις διεργασίες, το αργότερο τη χρονική στιγμή t Tmax Την χρονική στιγμή t, κάθε διεργασία καταγράφει την τοπική της κατάσταση και τη στέλνει στον παρατηρητή Ο παρατηρητής κατασκευάζει την καθολική κατάσταση με βάση τις τοπικές καταστάσεις που λαμβάνει Η καθολική κατάσταση είναι εγγυημένα συνεπής Κατανεμημένα Συστήματα 23 lalis@inf.uth.gr

24 t P1 P2 e 1.1 e 1.2 e 1.3 e 1.4 m1 S2? S?0 e 2.1 e 2.2 e 2.3 m2 rec<t> S?0 S2? C S20 Κατανεμημένα Συστήματα 24 lalis@inf.uth.gr

25 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη κατάσταση Level 6 S33 t Level 7 S43 Κατανεμημένα Συστήματα 25 lalis@inf.uth.gr

26 Πρόβλημα Η προηγούμενη μέθοδος υποθέτει ότι τα ρολόγια είναι κατάλληλα συγχρονισμένα με «αρκετή» ακρίβεια σε σχέση με την καθυστέρηση μετάδοσης μηνυμάτων Διαφορετικά, η P j ίσως καταγράψει στην κατάσταση της S j την παραλαβή ενός μηνύματος m που έστειλε η P i αφού κατέγραψε τη δική της κατάσταση S i Η καθολική κατάσταση που θα κατασκευαστεί είναι ασυνεπής Κατανεμημένα Συστήματα 26 lalis@inf.uth.gr

27 t P1 P2 e 1.1 e 1.2 e 1.3 e 1.4 S1? m1 t m2 e e 2.2 e S?1 rec<t> S1? S?1 C S11 Κατανεμημένα Συστήματα 27 lalis@inf.uth.gr

28 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S11 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη κατάσταση Level 6 S33 t Level 7 S43 Κατανεμημένα Συστήματα 28 lalis@inf.uth.gr

29 Ανοχή για μεγάλη διαφορά συγχρονισμού Την στιγμή t κάθε διεργασία καταγράφει την τοπική της κατάσταση (αν δεν το έχει κάνει ήδη βλ. παρακάτω) Αφού μια διεργασία καταγράψει την κατάσταση της, στέλνει μήνυμα record σε όλες τις διεργασίες Όταν μια διεργασία λάβει το πρώτο μήνυμα record, καταγράφει την κατάσταση της (αν δεν το έχει κάνει ήδη) και στέλνει μήνυμα record σε όλες τις διεργασίες Όταν μια διεργασία λάβει το τελευταίο μήνυμα record (από τον παρατηρητή ή άλλη διεργασία), στέλνει την καταγεγραμμένη κατάσταση στον παρατηρητή Κατανεμημένα Συστήματα 29 lalis@inf.uth.gr

30 t P1 e 1.1 e 1.2 e 1.3 e 1.4 S1? P2 rec rec S?0 m1 t e 2.2 e 2.3 m2 e 2.1 rec<t> S?0 S1? C S10 Κατανεμημένα Συστήματα 30 lalis@inf.uth.gr

31 Level 0 S00 Level 1 S10 Level 2 Level 3 S30 S20 S21 πραγματική εκτέλεση Level 4 S31 S22 Level 5 S32 S23 καταγεγραμμένη κατάσταση Level 6 S33 t Level 7 S43 Κατανεμημένα Συστήματα 31 lalis@inf.uth.gr

32 Ορθότητα: τερματισμός Τουλάχιστον μια διεργασία θα καταγράψει την τοπική κατάσταση της με βάση τον χρόνο, όταν το ρολόι της δείξει την ώρα t που υπέδειξε ο παρατηρητής, και τότε θα στείλει μήνυμα record στις υπόλοιπες διεργασίες Κάθε διεργασία θα λάβει (κάποτε) για πρώτη φορά ένα μήνυμα record (ίσως όχι από τον παρατηρητή), οπότε θα καταγράψει την τοπική της κατάσταση, και θα στείλει μήνυμα record στις άλλες Τελικά, κάθε διεργασία θα λάβει ένα μήνυμα record από κάθε άλλη διεργασία (και τον παρατηρητή), οπότε θα ολοκληρώσει την διαδικασία καταγραφής Κατανεμημένα Συστήματα 32 lalis@inf.uth.gr

33 Ορθότητα: συνέπεια Έστω ότι η κατάσταση S=state(C) που καταγράφεται είναι ασυνεπής, δηλαδή η τομή C είναι ασυνεπής $ e,e': e' C e e' e C Αφού τα τοπικά γεγονότα καταγράφονται με συνέπεια, η μόνη περίπτωση ασυνέπειας είναι να ισχύει $m: e i.x send(m) C e j.y recv(m) C Για να μην έχει καταγραφεί το e i.x, η P i έστειλε το μήνυμα record στην P j προτού στείλει το m Τότε, λόγω FIFO, το μήνυμα record θα είχε φτάσει στην P j πριν το m, άρα η P j δεν θα είχε καταγράψει στη τοπική της κατάσταση το γεγονός e j.y : άτοπο! Κατανεμημένα Συστήματα 33 lalis@inf.uth.gr

34 Ο χρόνος δεν παίζει (πλέον) ρόλο Ο χρόνος έναρξης που περιέχει το μήνυμα record του παρατηρητή είναι πλέον καθαρά υποβοηθητικός Από τη στιγμή που η πρώτη διεργασία P i καταγράψει την κατάσταση της, θα προκαλέσει την καταγραφή της κατάστασης σε όλες τις υπόλοιπες διεργασίες P j Οι P j θα καταγράψουν την κατάσταση τους ανεξάρτητα από την ώρα καταγραφής που πρότεινε ο παρατηρητής Αρκεί τουλάχιστον μια διεργασία να αρχίσει την διαδικασία καταγραφής, π.χ., αμέσως αφού λάβει το μήνυμα record του παρατηρητή (που δεν χρειάζεται να προσδιορίζει την ώρα που θα αρχίσει η καταγραφή) Κατανεμημένα Συστήματα 34 lalis@inf.uth.gr

35 Init(procs): grp = procs; recording = false; rcnt; S; On receivedfrom(p,<rec>): if (!recording) { recording = true; S = recordstate(); for-each p' in grp-{myid}: send(p',<rec>); rcnt = 1; } rcnt++; if (rcnt == sizeof(grp)+1) { recording = false; send(observer,<state,myid,s>); } Κατανεμημένα Συστήματα 35 lalis@inf.uth.gr

36 Αλγόριθμος κατανεμημένου στιγμιότυπου (Chandy & Lamport) Όταν μια διεργασία λάβει το μήνυμα record για πρώτη φορά, καταγράφει την κατάσταση της, στέλνει η ίδια ένα μήνυμα record σε όλες τις διεργασίες, και αρχίζει να καταγράφει τα μηνύματα που λαμβάνει από τις διεργασίες από τις οποίες δεν έχει λάβει ακόμα record Όταν μια διεργασία λάβει record και από τη τελευταία διεργασία, στέλνει την καταγεγραμμένη κατάσταση και τα καταγεγραμμένα μηνύματα στον παρατηρητή Ο παρατηρητής κατασκευάζει μια συνεπή καθολική κατάσταση και βλέπει να τα μηνύματα που βρίσκονταν «καθοδόν» κατά την διαδικασία καταγραφής Κατανεμημένα Συστήματα 36

37 Init(procs): grp = procs; recording = false; S; rcnt; msgs[]; recmsgs[]; On receivedfrom(p,<rec>): if (!recording) { recording = true; S = recordstate(); for-each p' in grp-{myid}: send(p',<rec>); rcnt = 1; msgs[] = {{},{},,{}}; recmsgs[] = {true,true,,true}; } rcnt++; if (p!= observer) { recmsgs[p] = false; } if (rcnt == sizeof(grp)+1) { recording = false; send(observer,<state,myid,s,msgs[]>); } On receivedfrom(p,<appmsg,m>): if (recmsgs[p]) { msgs[p] = msgs[p] + {<m>}; /* record message */ } app-receivedfrom(p,<m>); /* forward to application */ Κατανεμημένα Συστήματα 37 lalis@inf.uth.gr

38 P1 e 1.1 e 1.2 e 1.3 e 1.4 S1? m1 S1?+{} m2 rec rec P2 S?1 e 2.1 e 2.2 e 2.3 rec rec S?0+{} S10+{} Κατανεμημένα Συστήματα 38 lalis@inf.uth.gr

39 P1 e 1.1 e 1.2 e 1.3 e 1.4 S3? m1 rec rec m2 P2 S?0 e 2.2 e 2.3 e 2.1 rec rec S?0+{m1} S3?+{} S30+{m1} Κατανεμημένα Συστήματα 39 lalis@inf.uth.gr

40 Σχέση καταγεγραμμένης κατάστασης και πραγματικής εκτέλεσης Η καθολική κατάσταση S που κατασκευάζεται δεν αντιστοιχεί απαραίτητα σε μια κατάσταση από την οποία πραγματικά πέρασε το σύστημα Υπάρχει όμως σχέση ανάμεσα στην S και (α) την πραγματική κατάσταση S beg την στιγμή που άρχισε η καταγραφή (η κατασκευή) της S, και (β) την πραγματική κατάσταση S end την στιγμή που τελείωσε η καταγραφή (η κατασκευή) της S Η κατάσταση S είναι μια λογικά πιθανή ενδιάμεση κατάσταση ανάμεσα στις καταστάσεις S beg και S end, δηλαδή υπάρχει συνεπής εκτέλεση που αρχίζει από την S beg, περνάει από την S και καταλήγει στην S end Κατανεμημένα Συστήματα 40 lalis@inf.uth.gr

41 συνεπείς εκτελέσεις e 0,e 1,e 2, πραγματική εκτέλεση S beg S end e 0 ',e 1 ', e s-1 ' S e s ',e s+1 ', καταγεγραμμένη εκτέλεση Κατανεμημένα Συστήματα 41 lalis@inf.uth.gr

42 Ορολογία και παρατηρήσεις S η κατασκευασμένη συνεπής καθολική κατάσταση pre-snap(e): e έλαβε χώρα προτού καταγραφεί η S post-snap(e): e έλαβε χώρα αφού καταγράφηκε η S Έστω Sys η πραγματική εκτέλεση που οδηγεί από την κατάσταση S beg στην κατάσταση S end Αν η S δεν αντιστοιχεί στην πραγματική εκτέλεση $e,e' Sys : pre-snap(e) post-snap(e') e' e S είναι συνεπής e' e e' e e' e e e' Κατανεμημένα Συστήματα 42 lalis@inf.uth.gr

43 Διαδικασία κατασκευής Βρίσκουμε e,e' Sys : pre-snap(e) post-snap(e') e' e Αφού e e', μπορούμε να φτιάξουμε μια «λογικά ισοδύναμη» εκτέλεση, αντιμεταθέτοντας τα e και e' Καθώς η αντιμετάθεση αφορά λογικά ανεξάρτητα γεγονότα της εκτέλεσης που βρίσκονται μετά την S beg και πριν την S end, η νέα «λογικά ισοδύναμη» εκτέλεση πάλι περνάει από την S beg και οδηγεί στην S end Επαναλαμβάνουμε την διαδικασία μέχρι να φτιάξουμε την λογικά ισοδύναμη εκτέλεση Sys' SysA,SysB, έτσι ώστε e SysA: pre-snap(e) e SysB: post-snap(e) Κατανεμημένα Συστήματα 43 lalis@inf.uth.gr

44 Sbeg Send P1 e 1.1 e 1.2 e 1.3 e 1.4 m1 m2 S00 P2 rec e 2.1 S beg e 2.2 e 2.3 S end Sys e 1.1, e 1.2, e 2.1, e 1.3, e 2.2, e 2.3, e 1.4 pre pre pre post pre post post Sys' e 1.1, e 1.2, e 2.1, e 2.2, e 1.3, e 2.3, e 1.4 S22 pre pre pre pre post post post S10 S20 Sbeg S30 S21 S31 S22 S S32 S23 Send S33 S43 Κατανεμημένα Συστήματα 44 lalis@inf.uth.gr

45 Αποτίμηση κατηγορημάτων Κατανεμημένα Συστήματα 45

46 Αποτίμηση κατηγορημάτων Κατηγόρημα: συνάρτηση που απεικονίζει μια κατάσταση (καταγεγραμμένες τιμές των τοπικών μεταβλητών των διεργασιών) σε true ή false Σταθερό κατηγόρημα: ένα κατηγόρημα που αν ισχύσει τότε θα εξακολουθεί να ισχύει (μόνιμα) για όλη την υπόλοιπη διάρκεια της εκτέλεσης π.χ. ιδιότητες τύπου «τερματισμός υπολογισμού» και «αδιέξοδο» αντιστοιχούν σε σταθερά κατηγορήματα Ασταθές κατηγόρημα: ένα κατηγόρημα το οποίο ίσως ισχύσει προσωρινά, μια ή περισσότερες φορές, κατά τη διάρκεια της εκτέλεσης π.χ. η ιδιότητα «το άθροισμα των μεταβλητών x+y έχει τη τιμή 10» αντιστοιχεί σε ασταθές κατηγόρημα Κατανεμημένα Συστήματα 46

47 Καταγεγραμμένη συνεπής κατάσταση και αποτίμηση κατηγορημάτων Η αποτίμηση σταθερών κατηγορημάτων μπορεί να γίνει με βάση συνεπείς καθολικές καταστάσεις S που είναι πιθανές ενδιάμεσες καταστάσεις ανάμεσα στις πραγματικές καταστάσεις Sbeg και Send (στην έναρξη και τερματισμό της διαδικασίας καταγραφής) Αν Φ σταθερό κατηγόρημα, τότε ισχύει Φ(S) Φ(Send) Αν ένα σταθερό κατηγόρημα είναι αληθές με βάση την συνεπή καθολική κατάσταση S τότε (θα) είναι αληθές (για πάντα) και στη πραγματική εκτέλεση Αυτό δεν ισχύει για τα ασταθή κατηγορήματα! Κατανεμημένα Συστήματα 47 lalis@inf.uth.gr

48 x:=3 x:=4 x:=5 P1 e 1.1 e 1.2 e 1.3 e 1.4 e 1.5 e 1.6 m1 P2 m2 e 2.1 y:=6 e 2.2 e 2.3 e 2.4 y:=4 e 2.5 y:=2 K1: x=y K2: y-x=2 Κατανεμημένα Συστήματα 48 lalis@inf.uth.gr

49 S00 S10 S01 S11 S02 Κ2 ισχύει S21 S12 S03 S31 S22 S13 S41 S32 S23 πραγματική εκτέλεση S42 S33 S43 Κ1 ισχύει S53 S44 S63 S54 S45 S64 S55 S65 Κατανεμημένα Συστήματα 49

50 Αποτίμηση ασταθών κατηγορημάτων possibly(φ): υπάρχει τουλάχιστον μια συνεπής εκτέλεση που περνάει από τουλάχιστον μια (συνεπή) κατάσταση S όπου ισχύει Φ(S) definitely(φ): κάθε συνεπής εκτέλεση περνάει από τουλάχιστον μια κατάσταση S όπου ισχύει Φ(S) Αν για έστω μια συνεπή καθολική κατάσταση S δείξουμε ότι Φ(S), τότε δείξαμε ότι ισχύει possibly(φ) Για να δείξουμε ότι possibly(φ) πρέπει να δείξουμε ότι για κάθε δυνατή συνεπή κατάσταση S ισχύει Φ(S), ότι δηλαδή καμία συνεπής εκτέλεση δεν περνάει από μια κατάσταση S για την οποία να ισχύει Φ(S) possibly(φ) definitely( Φ) δεν ισχύει το αντίστροφο Κατανεμημένα Συστήματα 50 lalis@inf.uth.gr

51 Κατασκευή πλέγματος καταστάσεων Βλέπε παθητική παρακολούθηση με ειδοποιήσεις και κατασκευή συνεπών εκτελέσεων Ο παρατηρητής φτιάχνει την αρχική καθολική κατάσταση Sinit (επίπεδο 0), με βάση τις αρχικές καταστάσεις των διεργασιών Με βάση μια δεδομένη κατάσταση S σε επίπεδο L, κατασκευάζονται όλες οι συνεπείς καταστάσεις του επιπέδου L+1 που είναι εφικτές από την S Πιο συγκεκριμένα: αν S S 1 S i S N, για κάθε συνεπή κατάσταση S' i S i e, σχημάτισε την καθολική κατάσταση S' S 1 S' i S N Κατανεμημένα Συστήματα 51 lalis@inf.uth.gr

52 Υπολογίζοντας το possibly(φ) Αρχίζοντας από την Sinit, ο παρακολουθητής κατασκευάζει (σταδιακά) το πλέγμα των συνεπών καθολικών καταστάσεων Για κάθε συνεπή καθολική κατάσταση S που κατασκευάζεται, ελέγχεται κατά πόσο ισχύει Φ(S) Αν βρεθεί μια συνεπής καθολική κατάσταση S για την οποία ισχύει Φ(S), τότε ισχύει possibly(φ) και η διαδικασία τερματίζεται Διαφορετικά, με βάση τις καταστάσεις του τρέχοντος επιπέδου, φτιάχνονται όλες οι συνεπείς καταστάσεις του επομένου επιπέδου, και η διαδικασία συνεχίζεται Κατανεμημένα Συστήματα 52 lalis@inf.uth.gr

53 Init: L=0; states={sinit}; while (1) { } /* test states of level L */ if (Ε S states: Φ(S)) { return(true); } if (end of execution) { return(false); } /* construct consistent states of level L+1 */ L=L+1; states'=states; states={s: S' states' next_consistent(s',s)}; Κατανεμημένα Συστήματα 53 lalis@inf.uth.gr

54 Υπολογίζοντας το definitely(φ) Αρχίζοντας από την Sinit, ο παρακολουθητής κατασκευάζει (σταδιακά) το πλέγμα των συνεπών καθολικών καταστάσεων Για κάθε συνεπή καθολική κατάσταση S που κατασκευάζεται, ελέγχεται κατά πόσο ισχύει Φ(S), οπότε η συγκεκριμένη κατάσταση διαγράφεται Οι καταστάσεις που απομένουν στο τρέχον επίπεδο χρησιμοποιούνται για να κατασκευαστούν οι καταστάσεις του επόμενου επιπέδου Αν σε κάποιο επίπεδο δεν απομείνει καμία κατάσταση, τότε ισχύει definitely(φ) και η διαδικασία τερματίζεται Κατανεμημένα Συστήματα 54 lalis@inf.uth.gr

55 Init: L=0; states={sinit}; while (1) { } /* test states of level L */ states' = states - {S: S states Φ(S)}; if (states' == ) { return(true); } if (end of execution) { return(false); } /* construct consistent states of level L+1 */ L=L+1; states={s: S' states' next_consistent(s',s)}; Κατανεμημένα Συστήματα 55 lalis@inf.uth.gr

56 Μείωση του πλέγματος με φυσικά ρολόγια Οι αλγόριθμοι είναι της τάξης Ο(k Ν ), όπου k ο μέγιστος αριθμός των γεγονότων σε οποιαδήποτε διεργασία που είναι ανεξάρτητα από άλλα γεγονότα, και Ν ο αριθμός των διεργασιών Το k μπορεί να ελαχιστοποιηθεί αν (μαζί με τις λογικές) χρησιμοποιηθούν και φυσικές χρονοσφραγίδες Ακόμα και αν δύο γεγονότα είναι λογικά ανεξάρτητα μεταξύ τους, μπορεί να διαταχθούν, με βάση τις αντίστοιχες φυσικές χρονοσφραγίδες τους ή/και τον χρόνο παραλαβής τους (αν γνωρίζουμε το Tmax) Κατανεμημένα Συστήματα 56 lalis@inf.uth.gr

57 x=3 x=4 x=5 P1 e 1.1 e 1.2 e 1.3 e 1.4 e 1.5 e 1.6 m1 P2 e 2.1 y=6 m2 e 2.2 e 2.3 e 2.4 e 2.5 y=4 y=2 Κατανεμημένα Συστήματα 57 lalis@inf.uth.gr

58 S00 S10 S01 S11 S02 S21 S12 S03 S31 S22 S13 S41 S32 S23 αν γνωρίζουμε ότι το e 2.1 έλαβε χώρα μετά το e 1.1 πραγματική εκτέλεση S42 S33 S43 S53 S44 S63 S54 S45 S64 S55 αν γνωρίζουμε ότι το e 2.4 έλαβε χώρα μετά το e 1.5 S65 Κατανεμημένα Συστήματα 58 lalis@inf.uth.gr

59 Ακριβής παρατήρηση με φυσικά ρολόγια Αν οι διεργασίες διαθέτουν φυσικά ρολόγια που είναι συγχρονισμένα με μεγάλη ακρίβεια (σε σχέση με την ταχύτητα που λαμβάνουν χώρα τα γεγονότα και την ταχύτητα μετάδοσης μηνυμάτων στο σύστημα), μπορεί να κατασκευαστεί η πραγματική εκτέλεση Δεν μπορεί να κατασκευαστεί το ευρύτερο πλέγμα των συνεπών καθολικών καταστάσεων Δεν μπορούμε να βγάλουμε κάποια συμπεράσματα για εναλλακτικές αλλά λογικά συνεπείς εκτελέσεις (που θα μπορούσαν να αντιστοιχούν στην πραγματική εκτέλεση ή σε επόμενες/μελλοντικές εκτελέσεις) Κατανεμημένα Συστήματα 59

Συνεπής παρατήρηση εκτέλεσης & συνεπείς καθολικές καταστάσεις. Κατανεμημένα Συστήματα 1

Συνεπής παρατήρηση εκτέλεσης & συνεπείς καθολικές καταστάσεις. Κατανεμημένα Συστήματα 1 Συνεπής παρατήρηση εκτέλεσης & συνεπείς καθολικές καταστάσεις Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Λογικά συνεπείς τομές Τμήμα τοπικής ιστορίας: h i.k {e i.1,e i.2,e i.k } τμήμα της τοπικής εκτέλεσης

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

Εντοπισμός τερματισμού. Κατανεμημένα Συστήματα 1

Εντοπισμός τερματισμού. Κατανεμημένα Συστήματα 1 Εντοπισμός τερματισμού Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Μοντέλο συστήματος Μια ομάδα διεργασιών εκτελεί έναν υπολογισμό Κατάσταση διεργασίας: ενεργητική ή παθητική (ανάλογα με το αν εκτελεί μέρος

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

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 3: Καθολικά κατηγορήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 3: Καθολικά κατηγορήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός Ενότητα # 3: Καθολικά κατηγορήματα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια

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

οµήτης παρουσίασης Marzullo και Neiger αλγόριθµος Παράδειγµα Distributed Debugging Εισαγωγικά

οµήτης παρουσίασης Marzullo και Neiger αλγόριθµος Παράδειγµα Distributed Debugging Εισαγωγικά Distributed Debugging Τσώτσος Θοδωρής Φωλίνας Νίκος Εισαγωγικά Επιθυµούµε να µπορούµε να παρατηρούµε την εκτέλεση του προγράµµατος κατά τη διάρκειά του. Έχουµε τη δυνατότητα να ελέγξουµε αν οι απαιτούµενες

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

Καθολικέςκαταστάσεις. Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική. Κατανεµηµένα Συστήµατα 04-1

Καθολικέςκαταστάσεις. Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική. Κατανεµηµένα Συστήµατα 04-1 Καθολικέςκαταστάσεις Ορισµοί Κατασκευή καθολικών καταστάσεων Παθητική στρατηγική Ενεργητική στρατηγική Κατανεµηµένα Συστήµατα 04-1 Ορισµοί Τοπικήιστορία διεργασίας p i Έστω ότι e ij είναι το γεγονός jτης

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

Φυσικά και λογικά ρολόγια. Κατανεμημένα Συστήματα 1

Φυσικά και λογικά ρολόγια. Κατανεμημένα Συστήματα 1 Φυσικά και λογικά ρολόγια Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Τοπικά γεγονότα/συμβάντα Ορίζουμε ως γεγονός e i.x την x-οστή ενέργεια που έλαβε χώρα τοπικά στην διεργασία P i Το επίπεδο αφαίρεσης

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

Αποτίµησηκαθολικού κατηγορήµατος

Αποτίµησηκαθολικού κατηγορήµατος Αποτίµησηκαθολικού κατηγορήµατος Εισαγωγή Ιδιότητες καθολικών κατηγορηµάτων Αδιέξοδα Ανίχνευση αδιεξόδων Συγκεντρωτική ανίχνευση Ιεραρχική ανίχνευση Κατανεµηµένη ανίχνευση Επανόρθωση αδιεξόδων Κατανεµηµένος

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

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων Κ Σ Ι Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων Παναγιώτα Παναγοπούλου Άσκηση 1. Υποθέστε ότι οι διεργασίες ενός σύγχρονου κατανεμημένου συστήματος έχουν μοναδικές ταυτότητες (UIDs), γνωρίζουν ότι είναι συνδεδεμένες

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 20 εκεµβρίου, 2010 Αίθουσα Β3 Ασύγχρονα Κατανεµηµένα

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

Εντοπισμός αδιεξόδου. Κατανεμημένα Συστήματα 1

Εντοπισμός αδιεξόδου. Κατανεμημένα Συστήματα 1 Εντοπισμός αδιεξόδου Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Αδιέξοδο σε κατανεμημένο σύστημα Αδιέξοδο: «κυκλική» και ατέρμονη αναμονή μεταξύ δύο ή περισσοτέρων διεργασιών Το πρόβλημα υφίσταται ήδη σε

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Εκλογή αρχηγού και κατασκευή BFS δένδρου σε σύγχρονο γενικό δίκτυο Παναγιώτα Παναγοπούλου Περίληψη Εκλογή αρχηγού σε γενικά δίκτυα Ορισμός του προβλήματος Ο αλγόριθμος FloodMax

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

Κατανεμημένα Συστήματα με Java. Ενότητα # 2: Διάταξη συμβάντων, καθολικές καταστάσεις Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα με Java. Ενότητα # 2: Διάταξη συμβάντων, καθολικές καταστάσεις Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα με Java Ενότητα # 2: Διάταξη συμβάντων, καθολικές καταστάσεις Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια

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

Ομαδική Επικοινωνία (Group Communication) Κατανεμημένα Συστήματα 1

Ομαδική Επικοινωνία (Group Communication) Κατανεμημένα Συστήματα 1 Ομαδική Επικοινωνία (Group Communication) Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ομαδική επικοινωνία Σαφής διαχωρισμός ανάμεσα στις διεργασίες που είναι και σε αυτές που δεν είναι μέλη της ομάδας Ανοιχτή

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

Ανοχή βλαβών με καταγραφή κατάστασης και οπισθοδρόμηση (checkpoints & rollback) Κατανεμημένα Συστήματα 1

Ανοχή βλαβών με καταγραφή κατάστασης και οπισθοδρόμηση (checkpoints & rollback) Κατανεμημένα Συστήματα 1 Ανοχή βλαβών με καταγραφή κατάστασης και οπισθοδρόμηση (checkpoints & rollback) Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Μοντέλο συστήματος Ένα κατανεμημένο σύστημα με Ν διεργασίες που επικοινωνούν μεταξύ

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

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Αλγόριθμος Χρήση Συντονιστή Αλγόριθμος του Lamport Αλγόριθμος LeLann:

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

Αμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1

Αμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1 Αμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1 lalis@inf.uth.gr Μοντέλο δικτύου/επικοινωνίας Αξιοπιστία (δεν χάνονται μηνύματα) Άγνωστη ταχύτητα μετάδοσης

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Εκλογή αρχηγού σε γενικά δίκτυα 20 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Εκλογή αρχηγού σε γενικά δίκτυα Προηγούμενη διάλεξη Σύγχρονα Κατανεμημένα Συστήματα Μοντελοποίηση συστήματος Πρόβλημα εκλογής αρχηγού

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

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα με Java Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού

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

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts)

Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS. 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts) Κ Σ Ι Εκλογή αρχηγού σε σύγχρονο δακτύλιο: Οι αλγόριθμοι LCR και HS Παναγιώτα Παναγοπούλου 1 Ο αλγόριθμος LCR (Le Lann, Chang, and Roberts) Ο αλγόριθμος LCR είναι ένας αλγόριθμος εκλογής αρχηγού σε ένα

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

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

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

Διάλεξη 11: Αιτιότητα Διάταξη Γεγονότων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 11: Αιτιότητα Διάταξη Γεγονότων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 11: Αιτιότητα Διάταξη Γεγονότων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Ορισμός του «Πριν- Από» (Happens- Before) Λογικά Ρολόγια Αλγόριθμος Χρονοσφραγίδων του Lamport Διανυσματικά

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

Ρολόγια και Συγχρονισμός

Ρολόγια και Συγχρονισμός Ρολόγια και Συγχρονισμός Κατανεμημένα Συστήματα 2015 2016 http://www.cslab.ece.ntua.gr/courses/distrib Συνοπτικά Πρέπει να ξέρουμε πότε έγινε τι Ιδανικά ακριβώς πότε έγινε τι Ή τουλάχιστον να διατάξουμε

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

Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1

Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1 Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο Κατανεμημένα Συστήματα lalis@inf.uth.gr Μοντέλο δικτύου* Το δίκτυο δέχεται και επιστρέφει πακέτα κάθε πακέτο μεταφέρει έναν περιορισμένο αριθμό

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

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη)

Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) Προβλήματα ταυτόχρονης εκτέλεσης (για νήματα με κοινή μνήμη) ΙΙΙ 1 lalis@inf.uth.gr Ταυτόχρονη εκτέλεση Ο προγραμματιστής δεν ελέγχει (άμεσα) την εκτέλεση/εναλλαγή των νημάτων Δεν γνωρίζει πότε θα αρχίσει

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

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1 Αµοιβαίοςαποκλεισµός Εισαγωγή Συγκεντρωτική προσέγγιση Κατανεµηµένη προσέγγιση Αλγόριθµος Lamport Αλγόριθµος Ricart-Agrawala Προσέγγιση µεταβίβασης σκυτάλης Αλγόριθµος LeLann Αλγόριθµος Raymond Αλγόριθµος

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

Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση

Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση ΙΙΙ 1 lalis@inf.uth.gr Ορθή συμπεριφορά τμήματος λογισμικού Ένα τμήμα λογισμικού (ή ένας ΑΤΔ) προσπελάζεται με δομημένο/ελεγχόμενο

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

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1 Βασικές έννοιες Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Ορισμός κατανεμημένου συστήματος Ένα σύστημα από ξεχωριστές ενεργές οντότητες (ονομάζονται «κόμβοι» ή «διεργασίες») που εκτελούνται ταυτόχρονα/ανεξάρτητα

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

Κατανεμημένη συμφωνία (distributed consensus) Κατανεμημένα Συστήματα 1

Κατανεμημένη συμφωνία (distributed consensus) Κατανεμημένα Συστήματα 1 Κατανεμημένη συμφωνία (distributed consensus) Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Το πρόβλημα της συμφωνίας Σε ένα κατανεμημένο σύστημα, οι διεργασίες μπορεί ανά πάσα στιγμή να έχουν διαφορετική

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

Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1

Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1 Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο Κατανεμημένα Συστήματα lalis@inf.uth.gr Μοντέλο δικτύου Το δίκτυο δέχεται και επιστρέφει πακέτα κάθε πακέτο μεταφέρει έναν περιορισμένο αριθμό bytes

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

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Τι είναι ένα Κατανεμημένο Σύστημα; Επικοινωνία, Χρονισμός, Σφάλματα Μοντέλο Ανταλλαγής Μηνυμάτων 1

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

Αιτιώδεις Σχέσεις και Χρονισµός Παναγιώτα Φατούρου Κατανεµηµένα Συστήµατα 1 Η Σχέση Happens-Before (Συµβαίνει-ϖριν) Οι εκτελέσεις, ως ακολουθίες γεγονότων, καθορίζουν µια καθολική διάταξη σε αυτά. Ωστόσο

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

Διάλεξη 6: Εκλογή Προέδρου σε Σύγχρονους Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 6: Εκλογή Προέδρου σε Σύγχρονους Δακτύλιους. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 6: Εκλογή Προέδρου σε Σύγχρονους Δακτύλιους ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Μη Ομοιόμορφος Αλγόριθμος Εκλογής Προέδρου σε Σύγχρονο Δακτύλιο Ομοιόμορφος Αλγόριθμος Εκλογής Προέδρου

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Μοντέλο σύγχρονου κατανεμημένου δικτύου Εκλογή αρχηγού σε σύγχρονο δακτύλιο Παναγιώτα Παναγοπούλου Περίληψη Σύγχρονα Κατανεμημένα Συστήματα Μοντέλο Σφάλματα Πολυπλοκότητα Εκλογή

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

Ρολόγια και Συγχρονισμός

Ρολόγια και Συγχρονισμός Ρολόγια και Συγχρονισμός Κατανεμημένα Συστήματα 2016-2017 http://www.cslab.ece.ntua.gr/courses/distrib Συνοπτικά Πρέπει να ξέρουμε πότε έγινε τι Ιδανικά ακριβώς πότε έγινε τι Ή τουλάχιστον να διατάξουμε

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

Λύσεις Σειράς Ασκήσεων 5

Λύσεις Σειράς Ασκήσεων 5 Άσκηση 1 (α) {x = 12 y = 7} skip {y = 7} Λύσεις Σειράς Ασκήσεων 5 Η προδιαγραφή αυτή είναι ορθή τόσο με την έννοια της μερικής ορθότητας όσο και με την έννοια της ολικής ορθότητας. Αυτό οφείλεται στο γεγονός

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 3 εκεµβρίου, 2007 Αίθουσα Β3 Ασύγχρονα Κατανεµηµένα

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

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 17: Συμφωνία με Βυζαντινά Σφάλματα ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Βυζαντινά Σφάλματα Τι θα δούμε σήμερα Κάτω Φράγμα για Αλγόριθμους Συμφωνίας με Βυζαντινά Σφάλματα: n > 3f Αλγόριθμος Συμφωνίας

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

Κεφάλαιο 5 Αξιωματική Σημασιολογία και Απόδειξη Ορθότητας Προγραμμάτων

Κεφάλαιο 5 Αξιωματική Σημασιολογία και Απόδειξη Ορθότητας Προγραμμάτων Κεφάλαιο 5 Αξιωματική Σημασιολογία και Απόδειξη Ορθότητας Προγραμμάτων Προπτυχιακό μάθημα Αρχές Γλωσσών Προγραμματισμού Π. Ροντογιάννης 1 Εισαγωγή Τα προγράμματα μιας (κλασικής) γλώσσας προγραμματισμού

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Προηγούµενο Μάθηµα Ασύγχρονα Κατανεµηµένα Συστήµατα ιάταξη Γεγονότων Σχέση συνέβη-πριν Λογικός Χρόνος

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

Αιτιώδεις Σχέσεις και Χρονισµός. Παναγιώτα Φατούρου Αρχές Κατανεµηµένου Υπολογισµού

Αιτιώδεις Σχέσεις και Χρονισµός. Παναγιώτα Φατούρου Αρχές Κατανεµηµένου Υπολογισµού Αιτιώδεις Σχέσεις και Χρονισµός Η Σχέση Happens-Before (Συµβαίνει-πριν) Οι εκτελέσεις, ως ακολουθίες γεγονότων, καθορίζουν µια καθολική διάταξη σε αυτά. Ωστόσο είναι δυνατό δύο υπολογιστικά γεγονότα από

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

Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση

Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση ΙΙΙ 1 lalis@inf.uth.gr Ορθή συμπεριφορά τμήματος λογισμικού Ένα τμήμα λογισμικού (ή ένας ΑΤΔ) προσπελάζεται με δομημένο/ελεγχόμενο

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Σύγχρονα Κατανεμημένα Συστήματα 13 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Περίληψη 1 Σύγχρονα Κατανεμημένα Συστήματα 2 Το πρόβλημα εκλογής αρχηγού Ο αλγόριθμος LCR Ο αλγόριθμος HS 1 Σύγχρονα Κατανεμημένα

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

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 2:Στοιχεία Μαθηματικής Λογικής Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

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

Απαντήσεις. Απάντηση. Απάντηση

Απαντήσεις. Απάντηση. Απάντηση 6 η σειρά ασκήσεων Άλκης Γεωργόπουλος Α.Μ. 39 Αναστάσιος Κοντογιώργης Α.Μ. 43 Άσκηση 1. Απαντήσεις Η αλλαγή ενός ρολογιού προς τα πίσω µπορεί να προκαλέσει ανεπιθύµητη συµπεριφορά σε κάποια προγράµµατα.

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

Δομές ελέγχου ροής προγράμματος

Δομές ελέγχου ροής προγράμματος Δομές ελέγχου ροής προγράμματος Υπάρχουν δύο είδη δομών ελέγχου ροής (control flow): Οι δομές επιλογής και Οι δομές επανάληψης Δομές ελέγχου ροής προγράμματος Είδος δομής Δομές επιλογής Δομή ελέγχου ροής

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Συναίνεση χωρίς την παρουσία σφαλμάτων Κατανεμημένα Συστήματα Ι 4η Διάλεξη 27 Οκτωβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 4η Διάλεξη 1 Συναίνεση χωρίς την παρουσία σφαλμάτων Προηγούμενη

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Ο κώδικας δεν εκτελείται «μόνος του» Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1

Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 Διεργασίες (μοντέλο μνήμης & εκτέλεσης) Προγραμματισμός II 1 lalis@inf.uth.gr Πρόγραμμα και εκτέλεση προγράμματος Ο εκτελέσιμος κώδικας αποθηκεύεται σε ένα αρχείο Το αρχείο είναι μια «παθητική» οντότητα

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

Διάλεξη 16: Πρόβλημα Συμφωνίας. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 16: Πρόβλημα Συμφωνίας. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 16: Πρόβλημα Συμφωνίας ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Τι θα δούμε σήμερα Ορισμός του προβλήματος Συμφωνίας Αλγόριθμος Συμφωνίας με Σφάλματα Κατάρρευσης ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι 1 Πρόβλημα

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Ορισµοί Τοπική ιστορία

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Ορισµοί Τοπική ιστορία Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 10 εκεµβρίου, 2007 Αίθουσα Β3 Ασύγχρονα Κατανεµηµένα

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Ορισµοί Τοπική ιστορία

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Ορισµοί Τοπική ιστορία Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 12 Ιανουαρίου, 2008 Αίθουσα Β3 Ασύγχρονα Κατανεµηµένα

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

Διάλεξη 12: Διάχυση Μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 12: Διάχυση Μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 12: Διάχυση Μηνυμάτων ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Ορισμός Προσομοίωσης Τι θα δούμε σήμερα Προσομοίωση Υπηρεσίας Διάχυσης Μηνυμάτων Ιδιότητες Διάταξης Μηνυμάτων ΕΠΛ432: Κατανεµηµένοι Αλγόριθµοι

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

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

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

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

Πρόλογος... xv. Κεφάλαιο 1: Εισαγωγή... 1

Πρόλογος... xv. Κεφάλαιο 1: Εισαγωγή... 1 Περιεχόµενα Πρόλογος... xv Κεφάλαιο 1: Εισαγωγή... 1 1.1. Συστήµατα πολλών επεξεργαστών... 1 1.1.1. Λειτουργικά συστήµατα πολυεπεξεργαστών... 3 1.1.2. Λειτουργικά συστήµατα δικτύων... 4 1.1.3. Κατανεµηµένα

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

Ανάλυση της Ορθότητας Προγραμμάτων

Ανάλυση της Ορθότητας Προγραμμάτων Ανάλυση της Ορθότητας Προγραμμάτων Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Η διαδικαστική γλώσσα προγραμματισμού WHILE Τριάδες Hoare Μερική και Ολική Ορθότητα Προγραμμάτων Κανόνες Απόδειξης Μερικής

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

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

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

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

Ανάλυση της Ορθότητας Προγραμμάτων (HR Κεφάλαιο 4)

Ανάλυση της Ορθότητας Προγραμμάτων (HR Κεφάλαιο 4) Ανάλυση της Ορθότητας Προγραμμάτων (HR Κεφάλαιο 4) Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Η διαδικαστική γλώσσα προγραμματισμού WHILE Τριάδες Hoare Μερική και Ολική Ορθότητα Προγραμμάτων Κανόνες

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

β) 3 n < n!, n > 6 i i! = (n + 1)! 1, n 1 i=1

β) 3 n < n!, n > 6 i i! = (n + 1)! 1, n 1 i=1 Κεφάλαιο 2: Στοιχεία Λογικής - Μέθοδοι Απόδειξης 1. Να αποδειχθεί ότι οι λογικοί τύποι: (p ( (( p) q))) (p q) και p είναι λογικά ισοδύναμοι. Θέλουμε να αποδείξουμε ότι: (p ( (( p) q))) (p q) p, ή με άλλα

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

Ανάλυση της Ορθότητας Προγραμμάτων

Ανάλυση της Ορθότητας Προγραμμάτων Ανάλυση της Ορθότητας Προγραμμάτων Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Η διαδικαστική γλώσσα προγραμματισμού WHILE Τριάδες Hoare Μερική και Ολική Ορθότητα Προγραμμάτων ΚανόνεςΑπόδειξηςΜερικήςΟρθότητας

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων. Η σχέση συνέβη-πριν Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης ευτέρα, 8 εκεµβρίου, 2008 Αίθουσα Β3 Ασύγχρονα Κατανεµηµένα

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Κατανεμημένα Συστήματα Ι Συναίνεση και Σφάλματα Διεργασιών Παναγιώτα Παναγοπούλου Περίληψη Συναίνεση με σφάλματα διεργασιών Το πρόβλημα Ο αλγόριθμος FloodSet Επικύρωση δοσοληψιών Ορισμός του προβλήματος

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

Τυχαιοκρατικοί Αλγόριθμοι

Τυχαιοκρατικοί Αλγόριθμοι Πιθανότητες και Αλγόριθμοι Ανάλυση μέσης περίπτωσης Μελέτα τη συμπεριφορά ενός αλγορίθμου σε μια «μέση» είσοδο (ως προς κάποια κατανομή) Τυχαιοκρατικός αλγόριθμος Λαμβάνει τυχαίες αποφάσεις καθώς επεξεργάζεται

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

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

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

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

ψ φ2 = k χ φ2 = 4k χ φ1 = χ φ1 + χ φ2 + 3 = 4(k 1 + k 2 + 1) + 1 ψ φ1 = ψ φ1 + χ φ2 = k k = (k 1 + k 2 + 1) + 1

ψ φ2 = k χ φ2 = 4k χ φ1 = χ φ1 + χ φ2 + 3 = 4(k 1 + k 2 + 1) + 1 ψ φ1 = ψ φ1 + χ φ2 = k k = (k 1 + k 2 + 1) + 1 Ασκήσεις στο μάθημα της Λογικής 15 Οκτωβρίου 2015 Άσκηση 1. Να δειχτεί ότι δεν υπάρχουν τύποι μήκους 2,3,6 αλλά κάθε άλλο (θετικό ακέραιο) μήκος είναι δυνατό (άσκηση 2, σελίδα 39) Απόδειξη. Δείχνουμε πρώτα

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

Αυτοματοποιημένη Επαλήθευση

Αυτοματοποιημένη Επαλήθευση Αυτοματοποιημένη Επαλήθευση Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα: Έλεγχος Μοντέλου Αλγόριθμοι γράφων Αλγόριθμοι αυτομάτων Αυτόματα ως προδιαγραφές ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 4-1

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

Ασκήσεις μελέτης της 8 ης διάλεξης

Ασκήσεις μελέτης της 8 ης διάλεξης Οικονομικό Πανεπιστήμιο Αθηνών, Τμήμα Πληροφορικής Μάθημα: Τεχνητή Νοημοσύνη, 2017 18 Διδάσκων: Ι. Ανδρουτσόπουλος Ασκήσεις μελέτης της 8 ης διάλεξης 8.1. (i) Έστω ότι α και β είναι δύο τύποι της προτασιακής

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

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ροή Δικτύου Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Μοντελοποίηση Δικτύων Μεταφοράς Τα γραφήματα χρησιμοποιούνται συχνά για την μοντελοποίηση

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

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα

Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα Αλγόριθμοι πολυωνυμικού χρόνου Ένας αλγόριθμος πολυωνυμικού χρόνου έχει χρόνο εκτέλεσης όπου είναι μία (θετική) σταθερά Κλάση πολυπλοκότητας : περιλαμβάνει τα προβλήματα που επιδέχονται λύση σε πολυωνυμικό

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

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

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

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

Λύσεις Σειράς Ασκήσεων 5

Λύσεις Σειράς Ασκήσεων 5 Άσκηση Λύσεις Σειράς Ασκήσεων 5 Έστω P και Q συνθήκες και S ένα πρόγραμμα. Να εξηγήσετε με λόγια τις πιο κάτω προδιαγραφές (i) με την έννοια της μερικής ορθότητας και (ii) με την έννοια της ολικής ορθότητας.

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

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

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1 Επικοινωνία με μηνύματα Κατανεμημένα Συστήματα 1 lalis@inf.uth.gr Επικοινωνία με ανταλλαγή μηνυμάτων Η επικοινωνία με μηνύματα είναι ο πιο ευέλικτος τρόπος αλληλεπίδρασης σε κατανεμημένα συστήματα πιο

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

Ταξινόμηση: Εισαγωγικά. Ταξινόμηση (Sor ng) Αλγόριθμοι Απλής Ταξινόμησης. Βασικά Βήματα των Αλγορίθμων

Ταξινόμηση: Εισαγωγικά. Ταξινόμηση (Sor ng) Αλγόριθμοι Απλής Ταξινόμησης. Βασικά Βήματα των Αλγορίθμων Ταξινόμηση: Εισαγωγικά Ταξινόμηση (Sor ng) Ορέστης Τελέλης Βασικό πρόβλημα για την Επιστήμη των Υπολογιστών. π.χ. αλφαβητική σειρά, πωλήσεις ανά τιμή, πόλεις με βάση πληθυσμό, Μπορεί να είναι ένα πρώτο

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

Αλγόριθµοι Οπισθοδρόµησης

Αλγόριθµοι Οπισθοδρόµησης Αλγόριθµοι Οπισθοδρόµησης Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Η οπισθοδρόµηση στο σχεδιασµό αλγορίθµων Το πρόβληµα των σταθερών γάµων και ο αλγόριθµος των Gale-Shapley Το πρόβληµα

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

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 5ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 Η ΕΝΤΟΛΗ for Με την εντολή for δημιουργούμε βρόχους επανάληψης σε

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

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab ΠΑΡΑΡΤΗΜΑ IV Παρακάτω παραθέτουμε μία σειρά ασκήσεων για το Robolab ομαδοποιημένων σε κατηγορίες : Επιμέλεια : Κυριακού Γεώργιος 1 Φύλλο Ασκήσεων (πρόκληση με κινητήρες) ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ

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

Σειρά Προβλημάτων 3 Ημερομηνία Παράδοσης: 04/04/16

Σειρά Προβλημάτων 3 Ημερομηνία Παράδοσης: 04/04/16 ΜΕΡΟΣ Α Άσκηση 1 Σειρά Προβλημάτων 3 Ημερομηνία Παράδοσης: 04/04/16 Δύο ιδιότητες φ και ψ είναι ισοδύναμες μεταξύ τους, φ ψ, αν, για κάθε δομή Kripke M, M φ αν και μόνο αν M ψ. Να αποφασίσετε ποια από

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

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

Πολλοί τρόποι περιγραφής αλγορίθμων. Όλοι είναι μηχανιστικά ισοδύναμοι και ειδικά ισοδύναμοι με μερικές αναδρομικές συναρτήσεις. Θέση Church-Turing I Πολλοί τρόποι περιγραφής αλγορίθμων. Όλοι είναι μηχανιστικά ισοδύναμοι και ειδικά ισοδύναμοι με μερικές αναδρομικές συναρτήσεις Θέση Church-Turing: Όλες οι υπολογίσιμες συναρτήσεις

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

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» - 6/2/2014 Διάρκεια Εξέτασης: 2 ώρες και 50 λεπτά Ομάδα Α

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» - 6/2/2014 Διάρκεια Εξέτασης: 2 ώρες και 50 λεπτά Ομάδα Α ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΞΕΤΑΣΗ ΣΤΟ ΜΑΘΗΜΑ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» - 6/2/2014 Διάρκεια Εξέτασης: 2 ώρες και 50 λεπτά Ομάδα Α 1. (2.5 μονάδες) Ο κ. Ζούπας παρέλαβε μία μυστηριώδη τσάντα από το ταχυδρομείο. Όταν

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

Ιδιοκτησία Αντικειµένου

Ιδιοκτησία Αντικειµένου Software Transactional Memory H STM υποστηρίζει την εκτέλεση δοσοληψιών από τις διεργασίες, οι οποίες περιέχουν λειτουργίες που ο χρήστης θέλει να εκτελέσει στα διαµοιραζόµενα αντικείµενα. H STM εγγυάται

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

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης Κωνσταντίνος Μαργαρίτης Καθηγητής Τμήμα Εφαρμοσμένης Πληροφορικής Πανεπιστήμιο Μακεδονίας kmarg@uom.gr http://eos.uom.gr/~kmarg

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

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 5: Ανοχή βλαβών Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 5: Ανοχή βλαβών Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός Ενότητα # 5: Ανοχή βλαβών Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού

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

Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων

Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων ΙΙΙ 1 lalis@inf.uth.gr Ιδιότητες προγραμμάτων Ιδιότητα ασφάλειας (safety): ποτέ δεν θα φτάσουμε σε μια κατάσταση που είναι

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

Κατανεμημένα Συστήματα Ι

Κατανεμημένα Συστήματα Ι Συναίνεση με σφάλματα διεργασιών Κατανεμημένα Συστήματα Ι 5η Διάλεξη 10 Νοεμβρίου 2016 Παναγιώτα Παναγοπούλου Κατανεμημένα Συστήματα Ι 5η Διάλεξη 1 Συναίνεση με σφάλματα διεργασιών Προηγούμενη διάλεξη

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

Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων

Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων Συστηματικός έλεγχος ορθότητας ταυτόχρονων προγραμμάτων μέσω γράφου καταστάσεων ΙΙΙ 1 lalis@inf.uth.gr Ιδιότητες προγραμμάτων Ιδιότητα ασφάλειας (safety properties): δεν θα φτάσουμε ποτέ σε μια ανεπιθύμητη

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

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος Περιγραφή μαθήματος Θεωρία Υπολογισμού Άρτιοι ΑΜ Σκοπός του μαθήματος είναι η εισαγωγή στη Θεωρία Υπολογισμού και στη Θεωρία Υπολογιστικής Πολυπλοκότητας (Θεωρία Αλγορίθμων). Διδάσκων: Σταύρος Κολλιόπουλος

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

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr Θεωρία Υπολογισμού Άρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr Περιγραφή μαθήματος Σκοπός του μαθήματος είναι η εισαγωγή στη Θεωρία Υπολογισμού και στη Θεωρία Υπολογιστικής Πολυπλοκότητας

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

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

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

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

Λύσεις Σειράς Ασκήσεων 5

Λύσεις Σειράς Ασκήσεων 5 Άσκηση 1 Λύσεις Σειράς Ασκήσεων 5 Να υπολογίσετε τις ασθενέστερες προσυνθήκες έτσι ώστε οι πιο κάτω προδιαγραφές να είναι ορθές σύμφωνα (i) με την έννοια της μερικής ορθότητας και (ii) με την έννοια της

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

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 3/2/ / 37

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 3/2/ / 37 4η Γραπτή Άσκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 3/2/2019 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Άσκηση 3/2/2019 1 / 37 Άσκηση 1 Πρέπει να βρούμε όλες τις καλές προτάσεις φίλων για τον i ανάμεσα σε όλους

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

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων

Προηγούµενο Μάθηµα. Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Προηγούµενο Μάθηµα Κατανεµηµένα Συστήµατα Ι Μάθηµα Βασικής Επιλογής, Χειµερινού Εξαµήνου Τοµέας Εφαρµογών και Θεµελιώσεων Ιωάννης Χατζηγιαννάκης Σύγχρονα Κατανεµηµένα Συστήµατα Μοντελοποίηση Συστήµατος

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

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 7 Φεβρουαρίου / 38

4η Γραπτή Ασκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Ασκηση 7 Φεβρουαρίου / 38 4η Γραπτή Άσκηση Αλγόριθμοι και Πολυπλοκότητα CoReLab ΣΗΜΜΥ 7 Φεβρουαρίου 2017 CoReLab (ΣΗΜΜΥ) 4η Γραπτή Άσκηση 7 Φεβρουαρίου 2017 1 / 38 Άσκηση 1 Πρέπει να βρούμε όλες τις καλές προτάσεις φίλων για τον

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

Διάλεξη 15: Ατομική ΚΚΜ Εγγραφής/Ανάγνωσης με Γρήγορες Λειτουργίες. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Διάλεξη 15: Ατομική ΚΚΜ Εγγραφής/Ανάγνωσης με Γρήγορες Λειτουργίες. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Διάλεξη 5: Ατομική ΚΚΜ Εγγραφής/Ανάγνωσης με Γρήγορες Λειτουργίες ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι Γρήγορες Λειτουργίες Τι θα δούμε σήμερα Συστήματα Απαρτίας Αλγόριθμος SLIQ Χρήση Quorum Views ΕΠΛ432:

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 664: Ανάλυση και Επαλήθευση Συστημάτων ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ : Πέμπτη, 21 Μαρτίου 2013 ΔΙΑΡΚΕΙΑ : 14:00 16:00 ΔΙΔΑΣΚΟΥΣΑ : Άννα Φιλίππου Ονοματεπώνυμο:

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

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

Σειρά Προβλημάτων 1 Λύσεις Άσκηση 1 Σειρά Προβλημάτων 1 Λύσεις (α) Χρησιμοποιούμε τις επιπλέον μεταβλητές PC 0, PC 1, (program counters) οι οποίες παίρνουν ως τιμές ονόματα των γραμμών του κώδικα όπως φαίνεται πιο κάτω. P[0] P[1]

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

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

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

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

ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΘΕΜΑ 1 ο (2.5 µονάδες) ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ Τελικές εξετάσεις Παρασκευή 28 Σεπτεµβρίου 2007 ιάρκεια: 13:00-16:00

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

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

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

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

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

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

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

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

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

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