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

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

Σειρά Προβλημάτων 4 Ημερομηνία Παράδοσης: 13/11/13

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

CTL - Λογική Δένδρου Υπολογισμού (ΗR Κεφάλαιο 3.4)

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

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

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

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

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

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

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

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

CTL - Λογική Δένδρου Υπολογισμού

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

Γραμμική και διακλαδωμένη χρονική λογική

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

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

Μάθημα 4 ο. Κρίσιμα Τμήματα και Αμοιβαίος Αποκλεισμός

ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 6-1

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

ΕΠΑΝΑΛΗΠΤΙΚΕΣ ΑΣΚΗΣΕΙΣ ΣΤΗ CTL/LTL

Εισαγωγή στο εργαλείο SPIN

Άλγεβρες ιεργασιών και Τροπικές Λογικές

ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 8-1

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

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

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

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

Dr. Garmpis Aristogiannis - EPDO TEI Messolonghi

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

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

Ασκήσεις Επανάληψης Λύσεις

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

Ασκήσεις Επανάληψης Λύσεις

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

CTL Έλεγχος Μοντέλου (ΗR Κεφάλαιο 3.5 και 3.6.1)

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

Άλγεβρες Διεργασιών και Σχέσεις Ισοδυναμίας

Θέματα στη Μοντελοποίηση Συστημάτων

Επαναληπτικό Διαγώνισμα στη Δομή Ακολουθίας και Δομή Επιλογής

Ατοµική ιπλωµατική Εργασία ΜΟΝΤΕΛΟ-ΕΛΕΓΧΟΣ ΑΛΓΟΡΙΘΜΟΥ ΣΥΝΟΧΗΣ ΜΝΗΜΗΣ ΓΙΑ ΠΟΛΥΠΥΡΗΝΟΥΣ ΕΠΕΞΕΡΓΑΣΤΕΣ ΜΕ ΤΟ ΕΡΓΑΛΕΙΟ SPIN. Χριστοδουλίδης Ανδρέας Χρίστος

ΕΠΛ131 Αρχές Προγραμματισμού Ι

Στόχοι και αντικείμενο ενότητας. Προτάσεις επανάληψης. Έλεγχος ροής προγράμματος. #5.. Εντολές Επανάληψης

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

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

Ασκήσεις Επανάληψης Λύσεις

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

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

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

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

Θέματα Προγραμματισμού Η/Υ

Μεταβλητές τύπου χαρακτήρα

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

Δραστηριότητα Περίπτωσης. Τίτλος: Οι διαφορές της απλής, της σύνθετης και της εμφωλευμένης δομής επιλογής

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

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

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

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

ΕΦΑΡΜΟΓΗ Q-LEARNING ΣΕ GRID WORLD ΚΑΙ ΕΞΥΠΝΟΣ ΧΕΙΡΙΣΜΟΣ ΤΟΥ LEARNING RATE ΛΑΘΙΩΤΑΚΗΣ ΑΡΗΣ ΑΥΤΟΝΟΜΟΙ ΠΡΑΚΤΟΡΕΣ

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07

ΕΠΛ131 Αρχές Προγραμματισμού

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

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

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

ΗΥ-150. Προγραμματισμός

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

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

2.4 Κλασσικά Προβλήματα IPC

Εισαγωγή στον Προγραμματισμό

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

Χρονικά Συστήματα και Σχέσεις Ισοδυναμίας

Γραπτές εξετάσεις στο μάθημα: ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Θ) Εισηγητής: Γεωργίου Χρήστος ΘΕΜΑΤΑ & ΑΠΑΝΤΗΣΕΙΣ. Β. Χαρακτήρας(Αλφαριθμητικά)

Προγραμματισμός Ι (HY120)

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Ποια ιδιότητα αϖό τις δύο τελευταίες είναι ϖιο ισχυρή;

ΕΠΛ131 Αρχές Προγραμματισμού

ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 1-1

ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστημάτων 1-1

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

ΛΥΚΕΙΟ ΑΓΙΟΥ ΝΕΟΦΥΤΟΥ ΣΧΟΛΙΚΗ ΧΡΟΝΙΑ ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΙΟΥΝΙΟΥ 2011

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

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

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

Ασύγχρονο Σύστηµα ιαµοιραζόµενης Μνήµης Το σύστηµα περιέχει n διεργασίες p 0,, p n-1 και m καταχωρητές R 0,, R m-1. Κάθε διεργασία µοντελοποιείται ως

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

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

ΗΥ-150. Προγραμματισμός

Εισαγωγή στον Προγραμματισμό

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

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

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

Πληροφορική ΙΙ Θεματική Ενότητα 7

ΕΡΓΑΣΙΑ 4 - Αντικειμενοστραφής Υλοποίηση του Συστήματος Κατανομής Θέσεων σε Προγράμματα Σπουδών

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

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

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

ΛΥΚΕΙΟ ΣΟΛΕΑΣ Σχολική χρονιά

Στην ενότητα αυτή θα μελετηθούν τα εξής θέματα:

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

Transcript:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 664: Ανάλυση και Επαλήθευση Συστημάτων ΕΝΔΙΑΜΕΣΗ ΕΞΕΤΑΣΗ ΗΜΕΡΟΜΗΝΙΑ : Πέμπτη, 21 Μαρτίου 2013 ΔΙΑΡΚΕΙΑ : 14:00 16:00 ΔΙΔΑΣΚΟΥΣΑ : Άννα Φιλίππου Ονοματεπώνυμο: Αριθμός Ταυτότητας: Οδηγίες: Να διαβάσετε προσεχτικά και να απαντήσετε σε όλες τις ερωτήσεις. Να γράψετε τις απαντήσεις σας (καθαρά) στο εξεταστικό δοκίμιο. Ο άριστος βαθμός της εξέτασης είναι 100. Καλή Επιτυχία! Ερώτηση Βαθμός 1 2 3 4 Τελικός Βαθμός:

ΕΡΩΤΗΣΗ 1 [26 μονάδες] Θεωρήστε το πιο κάτω πρωτόκολλο το οποίο επιχειρεί να πετύχει αμοιβαίο αποκλεισμό ανάμεσα σε δύο παράλληλες διεργασίες. Οι γραμμές των δύο διεργασιών έχουν αριθμηθεί ως p1-p3 και q1-q3. Σημειώστε ότι οι ονομασίες p3 και q3 συγχωνεύουν τις δύο τελευταίες γραμμές των δύο διεργασιών με στόχο να διευκολύνουν τη ζητούμενη ανάλυση. bool want p := false, want q := false; int last = 1; while true do p1: atomic{ want p = true; last = 1;} p2: wait until(want q = false OR last = 2) p3: critical section; want p = false; while true do q1: atomic{ want q = true; last = 2;} q2: wait until(want p = false OR last = 1) q3: critical section; want q = false; (α) [8 μονάδες] Να μοντελοποιήσετε το πρωτόκολλο ως ένα σύστημα μεταβάσεων.

(β) [10 μονάδες] Να αποδώσετε το σύστημα μεταβάσεων του πρωτοκόλλου γραφικά (παρεμβαλλόμενη διάταξη).

(γ) [3 μονάδες] Διασφαλίζει το πρωτόκολλο αμοιβαίο αποκλεισμό; Εξηγήστε γιατί/γιατί όχι. (δ) [5 μονάδες] Παρουσιάστε μονοπάτι χρησιμοποιώντας τη γραφική αναπαράσταση του συστήματος μεταβάσεων που κατασκευάσατε στο (β) για να δείξετε ότι, ενώ η πρώτη διεργασία επιθυμεί να εισέλθει στο κρίσιμό της τμήμα, δεν το πετυχαίνει ποτέ. Ποιος είναι ο ασθενέστερος τύπος δικαιοσύνης που πρέπει να επιβληθεί στο σύστημα έτσι ώστε να αποφευχθεί αυτό το φαινόμενο;

ΕΡΩΤΗΣΗ 2 [30 μονάδες] (α) [8 μονάδες] Να διατυπώσετε τις πιο κάτω προτάσεις στον χρονικό λογισμό CTL. (i) Είναι δυνατόν το p να εμφανιστεί σε δύο διαδοχικές καταστάσεις. (ii) Μετά το p, αν αυτό εμφανιστεί, το q δεν εμφανίζεται ποτέ ξανά. (iii) To p θα εμφανιστεί ακριβώς μια φορά.

(β) [7 μονάδες] Θεωρήστε την ακόλουθη δομή Kripke. {r} 1 {p,t} 2 3 {p,q} 4 {r,q} Να εφαρμόσετε τον αλγόριθμο μοντελοελέγχου της CTL για να ελέγξετε κατά πόσο η κατάσταση 1 της δομής ικανοποιεί την ιδιότητα που ακολουθεί. E [ EG (q r) U EX (q AF (p s)) ]

(γ) [15 μονάδες] Να αποφασίσετε ποια από τα πιο κάτω ζεύγη προτάσεων περιέχουν ισοδύναμες προτάσεις. Αν δύο προτάσεις είναι ισοδύναμες να δώσετε απόδειξη χρησιμοποιώντας τη σημασιολογία, διαφορετικά να παρουσιάσετε δομή Kripke στην οποία να ικανοποιείται η μία ιδιότητα αλλά όχι η άλλη. (i) F (p G q) και (F p) (F G q) (ii) X (p G q) και (X p) (X G q)

ΕΡΩΤΗΣΗ 3 [32 μονάδες] (α) [10 μονάδες] Ακολουθεί ένα μοντέλο γραμμένο στη γλώσσα Promela. chan forks[3] = [0] of { bool }; proctype Phil(byte n, chan left, chan right){ bool x, y; end: do :: printf( Philosopher %d is thinking\n,n); left?(x); right?(y); printf( Philosopher %d is eating\n,n); right!true; left!true; od } proctype Fork(chan ch){ bool z; do :: ch! true; ch? (z); od } init { } atomic{ run Fork(forks[0]); run Fork(forks[1]); run Fork(forks[2]); run Phil(0,forks[0],forks[1]); run Phil(1,forks[1],forks[2]); run Phil(2,forks[2],forks[0]); } Το μοντέλο αυτό μπορεί να εμφανίσει αδιέξοδο. Να εξηγήσετε πως μπορεί να εμφανιστεί το αδιέξοδο με συγκεκριμένες αναφορές στον κώδικα.

(β) Θεωρήστε τον πιο κάτω Promela κώδικα. byte mode = 1; int x = 0, y = 0; active proctype m(){ endloop: if :: mode = 1 :: mode = 2 fi; do :: x := x+1; :: mode == 1 && x > y -> x = x-1 :: mode == 2 && y < x -> y = y+10 :: mode == 3 -> goto endloop od; count = 0 } active proctype n(){ do :: mode = 3 od } (i) [8 μονάδες] Να διατυπώσετε τις πιο κάτω προτάσεις στη χρονική λογική LTL. Στο μέλλον η μεταβλητή y θα πάρει τιμή > 4. Η μεταβλητή mode θα πάρει αναπόφευκτα την τιμή 3. Αν κάποια στιγμή η μεταβλητή y πάρει τιμή < x τότε θα παραμείνει < x μέχρι που, κάποια στιγμή στο μέλλον, η μεταβλητή mode πάρει την τιμή 2. Η μεταβλητή x δεν θα πάρει ποτέ την τιμή 100.

(ii) [8 μονάδες] Να αποφασίσετε κατά πόσο οι προτάσεις από το μέρος (i) ικανοποιούνται από το μοντέλο. (iii) [6 μονάδες] Να αναθεωρήσετε τις απαντήσεις σας από το μέρος (ii) υποθέτοντας ότι ο μοντελοέλεγχος διενεργείται με την υπόθεση ότι ο χρονοδρομολογητής του συστήματος (scheduler) εφαρμόζει ελαφρά δικαιοσύνη μεταβάσεων (weak fairness).

ΕΡΩΤΗΣΗ 4 [12 μονάδες] Να συγκρίνετε τους χρονικούς λογισμούς LTL, CTL και CTL * ως προς τις δυνατότητες και αδυναμίες τους για το μοντελοέλεγχο συστημάτων.

ΕΠΙΠΡΟΣΘΕΤΟΣ ΧΩΡΟΣ