CWB-NC: The Concurrency Workbench of the New Century

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

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

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

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

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

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

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

Άλγεβρες Διεργασιών (Process Algebras)

ΕΠΛ664 ΑΝΑΛΥΣΗ ΚΑΙ ΕΠΑΛΗΘΕΥΣΗ ΣΥΣΤΗΜΑΤΩΝ

Επαλήθευση Πρωτοκόλλων

Χρόνος και Άλγεβρες Διεργασιών

Λειτουργικά. Συστήματα Ι. Φ ρ ο ν τ ι σ τ ή ρ ι ο. Αριστείδης Ηλίας. Εργαστήριο Ηλεκτρονικών Υπολογιστών

LTL to Buchi. Overview. Buchi Model Checking LTL Translating LTL into Buchi. Ralf Huuck. Buchi Automata. Example

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

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

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

ΘΕΜΑ PROJECT COMPILER FLAGS ΤΡΑΧΑΝΗΣ ΔΗΜΗΤΡΗΣ 6108 ΤΡΑΧΑΝΗΣ ΓΕΩΡΓΙΟΣ 5789

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

Shell Scripts: loops / if / test

for for for for( . */

Βάσεις Δεδομένων (Databases)

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

Γραμμική Χρονική Λογική (Linear Temporal Logic) (ΗR Κεφάλαιο 3.1 και 3.2)

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

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

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

Τυπικές χρήσεις της Matlab

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 5

Εισαγωγή στο MATLAB. Κολοβού Αθανασία, ΕΔΙΠ,

FSM Toolkit Exercises

Μεταφραστής (Compiler)

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

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

ΦΥΣ-151. Ηλεκτρονικοί Υπολογιστές Ι (FORTRAN 77) (Άνοιξη 2004)

Β7.1.4 Δομές Επανάληψης. Β Λυκείου Κατεύθυνσης

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

Περίληψη Φροντιστηρίου. Κατανεμημένα Συστήματα Ι. Το περιβάλλον DAP - Χαρακτηριστικά. Το περιβάλλον DAP Τι είναι.

Simulation Users Manual

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

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

HY340, 2009 Α. Σαββίδης Slide 2 / 143. HY340, 2009 Α. Σαββίδης Slide 3 / 143. HY340, 2009 Α. Σαββίδης Slide 4 / 143

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

SMPcache. Ένα εργαλείο για προσομοίωση-οπτικοποίηση κρυφής μνήμης (Cache)

Προχωρημένα Θέματα Βάσεων Δεδομένων

ΚΕΦΑΛΑΙΟ 5. Matlab GUI για FWSVM και Global SVM

Κεφάλαιο 4 Σημασιολογία μιας Απλής Προστακτικής Γλώσσας

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

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

Α1. (α). ώστε τον ορισµό του προβλήµατος (Μονάδες 3)

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

Βασικά στοιχεία της Java

ΕΙΣΑΓΩΓΗ ΣΤΟ MATLAB- SIMULINK

Δίκτυα Υπολογιστών I Εργαστήρια

2.1. Οι λογαριασµοί χρηστών Σύνδεση (login) και αποσύνδεση (logout)

Δομές Δεδομένων. Ενότητα 10: Πλήρη Δυαδικά Δέντρα, Μέγιστα/Ελάχιστα Δέντρα & Εισαγωγή στο Σωρό- Ο ΑΤΔ Μέγιστος Σωρός. Καθηγήτρια Μαρία Σατρατζέμη

Maude 6. Maude [1] UIUC J. Meseguer. Maude. Maude SRI SRI. Maude. AC (Associative-Commutative) Maude. Maude Meseguer OBJ LTL SPIN

Λογισµικό Ανοικτού Κώδικα και συστήµατα ιαχείρισης Περιεχοµένου. Βασίλης Στεφανίδης Καθηγητής ΠΕ19 ΓΕΛ Ασσήρου

HY150a Φροντιστήριο 3 24/11/2017

Consolidated Drained

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

Προγραμματισμός και Εφαρμογές Υπολογιστών

SÔntomec plhroforðec gia to glpsol (glpk)

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

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 4

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

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

Εντολές εισόδου - εξόδου. Εισαγωγή στη C++

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

3 ο Εργαστήριο Μεταβλητές, Τελεστές

a = 10; a = k; int a,b,c; a = b = c = 10;

Εργαστηριακή Άσκηση 4

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

Εισαγωγή στη Fortran. Μάθημα 1 ο. Ελευθερία Λιούκα

Μερικές άλλες χρήσιμες εντολές

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 10 : Εντολές επιλογής και αποφάσεων

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

Απλές συναρτήσεις του Excel (Συνέχεια)

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and

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

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

Mεταγλωττιστές. 4 ο εργαστηριακό μάθημα Λεξική ανάλυση και flex. Θεωρία

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

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

Εφαρμογές Υπολογιστών

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

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

Υπάρχουν τρεις εναλλακτικές τεχνικές για την ανάλυση της απόδοσης ενός συστήµατος:

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

CYGWIN Οδηγίες Χρήσης (Συγγραφέας: Γιώργος ούκας)

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Μεταφορά Αρχείων µε χρήση της Υπηρεσίας FTP σελ. 1

Επίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. Εξετάσεις Προσομοίωσης 24/04/2019


ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 5/12/10, 23:59

Πολυπύρηνοι επεξεργαστές Multicore processors

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

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

ικτυακά Πολυμέσα Ι (Β Έτος, 3ο εξ) ιάλεξη #8η: Javascript: Τεχνικές εντοπισμού/διόρθωσης λαθών, τελεστές, δομές ελέγχου, βρόχοι επανάληψης

Transcript:

CWB-NC: The Concurrency Workbench of the New Century Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Εισαγωγή στο Concurrency Workbench Χρήσιµες Εντολές Γλώσσα µοντελοποίησης και γλώσσα µοντελο-ελέγχου ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-1

CWB-NC: The Concurrency Workbench of the New Century Εργαλείο για επαλήθευση συστηµάτων γραµµένα στη CCS (TCCS, SCCS, PCCS, CSP, LOTOS). Πρώτη κυκλοφορία το 1988. Αναπτύχθηκε στο North Carolina State University από τον Rance Cleaveland και φοιτητές του. Ιστοσελίδα: http://www.cs.sunsysb.edu/~cwb. ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-2

Χρήσιµες Εντολές load <filename>: διαβάζει το περιεχόµενο του αρχείου filename (το όνοµα πρέπει να τελειώνει σε.ccs ) που περιέχει ορισµούς CCS διεργασιών. ls: επιστρέφει κατάλογο µε όλες τις δηλώσεις που έχουν γίνει µέχρι στιγµής. cat <identifier>: επιστρέφει την έκφραση που συνδέεται µε τον όρο identifier. compile <agent>: παράγει το σύστηµα µεταβάσεων που αντιστοιχεί στη διεργασία agent. sim <agent>: ξεκινά προσοµοίωση της διεργασίας agent. cd <location>: θέτει το directory location ως το σηµείο εργασίας. ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-3

Χρήσιµες Εντολές size <agent>: υπολογίζει και επιστρέφει το µέγεθος της διεργασίας agent. trans <agent>: εµφανίζει στην οθόνη τις αρχικές µεταβάσεις που µπορεί να εκτελέσει η διεργασία. back <num>: επιτρέπει την οπισθοδρόµηση κατά βήµατα κατά την προσοµοίωση µιας διεργασίας. help <command> quit ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-4

Χρήσιµες Εντολές chk [-L logic] agent formula:ελέγχει κατά πόσο η διεργασία agent ικανοποιεί την ιδιότητα formula της λογικής logic. Υποστηρίζονται οι λογικές µ-calculus και GCTL: logic {gctl, mu} eq [-S equiv] <agent1> <agent2>: ελέγχει κατά πόσο οι δύο διεργασίες είναι ισοδύναµες. Μπορούν να ελεγχθούν (ανάµεσα σε άλλες) οι ισοδυναµίες ασθενούς δυπροσοµοίωσης (obseq), ισχυρής δυπροσοµοίωσης (bisim) και ισοδυναµίας ίχνους (trace). min [- S equiv] <agent> <identifier>: ελαχιστοποιεί το σύστηµα µεταβάσεων της διεργασίας agent σύµφωνα µε την ισοδυναµία equiv και φυλάει το αποτέλεσµα στο όνοµα identifier. Μπορούν να χρησιµοποιηθούν οι ισοδυναµίες ασθενούς δυπροσοµοίωσης (obseq) και ισχυρής δυπροσοµοίωσης (bisim). ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-5

Γλώσσα Μοντελοποίησης ιατύπωση διεργασιών: Κατά τον ορισµό µιας διεργασίας χρησιµοποιείται η λέξη κλειδί proc. proc Spec = send.'receive.spec H αλληλενέργεια σε ένα κανάλι chan, δηλαδή η έξοδος chan σηµειώνεται ως chan. H εσωτερική ενέργεια συµβολίζεται ως t. ηλώσεις: Για τη δήλωση ενός συνόλου καναλιών χρησιµοποιείται η λέξη κλειδί set. set Internals = {r0,r1,s0,s1,rack0,rack1, sack0,sack1 } H περιγραφή ενός µοντέλου που αποτελείται από ένα σύνολο διεργασιών και δηλώσεων αποθηκεύεται σε ένα αρχείο που τελειώνει µε.ccs το οποίο στη συνέχεια διαβάζεται στο εργαλείο. ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-6

Παράδειγµα Το πρωτόκολλο ABP The alternating-bit protocol: Πρωτόκολλο για επικοινωνία δεδοµένων µέσω ενός µέσου που πιθανόν να χάνει µηνύµατα. O Senderστέλλει εναλλάξ τα δυφία 0 και 1µε κάθε του µήνυµα τα οποία πρέπει να επιβεβαιωθούν µε το ίδιο δυφίο από το Receiver. send Sender Medium Receiver s0 r0 s1 r1 rack0 sack0 receive rack1 sack1 ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-7

Μοντελοποίηση στη CCS proc S0 = send.s0' proc S0' = 's0.(rack0.s1 + rack1.s0' + t.s0') proc S1 = send.s1' proc S1' = 's1.(rack1.s0 + rack0.s1' + t.s1') proc R0 = r0.'receive.'sack0.r1 + r1.'sack1.r0 + t.'sack1.r0 proc R1 = r1.'receive.'sack1.r0 + r0.'sack0.r1 + t.'sack0.r1 ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-8

Μοντελοποίηση στη CCS To µέσο χωρίς απώλειες µηνυµάτων: proc Msafe = s0.'r0.msafe + s1.'r1.msafe + sack0.'rack0.msafe + sack1.'rack1.msafe Το µέσο µε απώλειες µηνυµάτων: proc Mlossy = s0.('r0.mlossy + Mlossy) + s1.('r1.mlossy + Mlossy) + sack0.('rack0.mlossy + Mlossy) + sack1.('rack1.mlossy + Mlossy) ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-9

Μοντελοποίηση στη CCS Το σύστηµα χωρίς απώλειες µηνυµάτων: proc ABP-safe = (R0 Msafe S0) \ Internals Το σύστηµα µε απώλειες µηνυµάτων: proc ABP-lossy = (R0 Mlossy S0) \ Internals ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-10

Ανάλυση του πρωτοκόλλου µε το CWB-NC ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-11

Ανάλυση του πρωτοκόλλου µε το CWB-NC cwb-nc> ls ===Agent=== Spec S0 S0' S1 S1' R0 R1 ===Set=== Internals ===Mu-Calculus and CTL Formula=== ===GCTL* Formula=== Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) cwb-nc> ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-12

Προσοµοίωση του πρωτοκόλλου cwb-nc> sim ABP-safe ABP-safe 1: -- send --> (R0 Msafe S0')\Internals 2: -- t --> ('sack1.r0 Msafe S0)\Internals cwb-nc-sim> 1 (R0 Msafe S0')\Internals 1: -- t --> (R0 'r0.msafe (rack0.s1 + rack1.s0' + t.s0'))\internals 2: -- t --> ('sack1.r0 Msafe S0')\Internals cwb-nc-sim> 2 ('sack1.r0 Msafe S0')\Internals 1: -- t --> (R0 'rack1.msafe S0')\Internals 2: -- t --> ('sack1.r0 'r0.msafe (rack0.s1 + rack1.s0' + t.s0'))\internals cwb-nc-sim> 1 (R0 'rack1.msafe S0')\Internals 1: -- t --> ('sack1.r0 'rack1.msafe S0')\Internals cwb-nc-sim> 1 ('sack1.r0 'rack1.msafe S0')\Internals The agent has no transitions cwb-nc-sim> quit Execution time(user,system,gc,real):(22.422,0.000,0.000,22.422) ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-13

Έλεγχος Ισοδυναµιών cwb-nc> eq -S bisim Spec ABP-safe Building automaton... States: 51 Transitions: 76 Done building automaton. FALSE... Spec satisfies: [t]ff ABP-safe does not. Execution time (user,system,gc,real):(0.000,0.000,0.000,0.000) cwb-nc> eq Spec ABP-safe Building automaton... States: 51 Transitions: 76 Done building automaton. Transforming automaton... Done transforming automaton. FALSE... Spec satisfies: [[send]]<<'receive>>tt ABP-safe does not. Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-14

Έλεγχος Ισοδυναµιών cwb-nc> eq -S bisim Spec ABP-lossy Building automaton... States: 59 Transitions: 132 Done building automaton. FALSE... Spec satisfies: [t]ff ABP-lossy does not. Execution time (user,system,gc,real):(0.000,0.000,0.000,0.000) cwb-nc> eq Spec ABP-lossy Building automaton... States: 59 Transitions: 132 Done building automaton. Transforming automaton... Done transforming automaton. TRUE Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) cwb-nc> ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-15

Ελαχιστοποίηση συστήµατος µεταβάσεων cwb-nc> min ABP-safe ABP-safe-min Building automaton... States: 49 Transitions: 74 Done building automaton. Transforming automaton... Done transforming automaton. Minimizing automaton... Computing bisimulation... Done computing bisimulation. Done minimizing automaton. Execution time (user,system,gc,real):(0.015,0.000,0.000,0.015) cwb-nc> size ABP-safe-min Building automaton... States: 10 Transitions: 16 Done building automaton. States: 10 Transitions: 16 Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) cwb-nc> ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-16

Ελαχιστοποίηση συστήµατος µεταβάσεων cwb-nc> compile ABP-safe-min Building automaton... States: 10 Transitions: 16 Done building automaton. 0: t {1} send {2} 1: send {3} 2: t {4, 5} 3: 4: t {3, 6} 5: t {6} 'receive {7} 6: 'receive {3} 7: t {8, 9} 8: t {1} send {2} 9: t {1, 3} Start States: [0] Execution time (user,system,gc,real):(0.047,0.000,0.000,0.047) cwb-nc> ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-17

Ελαχιστοποίηση συστήµατος µεταβάσεων cwb-nc> min ABP-lossy ABP-lossy-min Building automaton... States: 57 Transitions: 130 Done building automaton. Transforming automaton... Done transforming automaton. Minimizing automaton... Computing bisimulation... Done computing bisimulation. Done minimizing automaton. Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) cwb-nc> size ABP-lossy-min Building automaton... States: 3 Transitions: 3 Done building automaton. States: 3 Transitions: 3 Execution time (user,system,gc,real):(0.000,0.000,0.000,0.000) cwb-nc> ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-18

Μοντελο-έλεγχος στο CWB-NC Κατά τον ορισµό µιας ιδιότητας χρησιµοποιείται η λέξη κλειδί prop. ιατύπωση ιδιοτήτων: Χρησιµοποιούνται οι τελεστές E, A, F, G, not, U. Γράφουµε tt για true και ff για false. Ετικέτες: Ετικέτα µπορεί να είναι οποιαδήποτε ενέργεια, (α) ή αλληλενέργεια ( α). Γράφοντας {a,b,c} επιτρέπουµε την εµφάνιση οποιασδήποτε εκ των ετικετών a, b, c. Γράφοντας {-} εννοούµε το σύνολο όλων των ετικετών. Γράφοντας ~A, όπου Α ένα σύνολο ετικετών, επιτρέπουµε την εµφάνιση οποιασδήποτε εκτός από αυτές που περιέχονται στο σύνολο Α. ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-19

Παραδείγµατα prop can_deadlock = E F ~{- } prop can_send = E ({t} U {send}) prop can_receive = E ({t} U {'receive}) prop always_can_send_or_receive = A G (can_send \/ can_receive) prop no_repeat = A G (([send](not can_send)) /\ (['receive](not can_receive))) prop no_repeat' = A G ( ({send} -> X (~{send} W {'receive})) /\ ({'receive} -> X (~{'receive} W {send} )) ) ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-20

Μοντελο-έλεγχος στο CWB-NC cwb-nc> load abp.gctl Execution time (user,system,gc,real):(0.016,0.000,0.000,0.016) cwb-nc> chk -L gctl ABP-lossy always_can_send_or_receive Generating ABTA from GCTL* formula...done Initial ABTA has 16 states. Simplifying ABTA: Minimizing sets of accepting states...done Performing constant propagation...done Joining operations...done Shrinking automaton...done Computing bisimulation... Done computing bisimulation. Simplification completed. Simplified ABTA has 12 states. Starting ABTA model checker. Model checking completed. Expanded state-space 490 times. Stored 296 dependencies. TRUE, the agent satisfies the formula. Execution time (user,system,gc,real):(0.063,0.000,0.000,0.063) ΕΠΛ 664 Ανάλυση και Επαλήθευση Συστηµάτων 11-21