Professional Documents
Culture Documents
Agenda
1 2 3 4 5
Uvod
Verifikacija nekog programa ili logikog kola podrazumijeva provjeru da li je konkretna implementacija korektna, odnosno da li ispunjava neke unaprijed zadate zahtjeve. Verifikacija pomou provjere modela: - Eksplozija stanja; - Potpuna automatizacija;
Agenda
1 2 3 4 5
Vremenski automati
Bchi-ev automat s konanim brojem stanja, proiren sa skupom realnih varijabli modeliranih kao satovi; pojednostavljena verzija, nazvana Timed Safety Automata specificira bolja svojstva koristei lokalne invarijante.
Vremenski automati
Formalna sintaksa
Vremenski automati
Mrea vremenskih automata
Mrea vremenskih automata je paralelna kompozicija od n vremenskih automata, koji se u ovom sluaju nazivaju procesi i kombinuju se u jedan sistem, ali eksterne akcije mogu ostati skrivene.
Vremenski automati
Alati
KRONOS - razvijen na VERIMAG-u u Francuskoj s ciljem verifikacije kompleksnih real-time sistema; komponente realtime sistema su modelirane pomou vremenskih automata a korektnost zahtjeva su izraene preko real-time temporalne logike TCTL. UPPAAL- opisuje mreu vremenskih automata predstavljenu kao skup predloaka (engl. template) pojedinih automata. HyTECH - alat za automatsku analizu ugraenih sistema. On rauna uslove pod kojima linearni hibridni sistem zadovoljava vremenske zahtjeve. SGM - alat za specifikaciju i verifikaciju real-time sistema. Razvijen je od strane Formal Methods grupe na Institute of Information Science, Academia Sinica, Taipei, Taiwan i SGM grupe. Koristi razne sofisticirane provjere i tehnike razvijene u posljednih nekoliko godina.
Agenda
1 2 3 4 5
UPPAAL
Arhitektura
Autograph(.atg)-grafika prezentacije sistema TA; Atg2ta transformira opis sistema iz grafikog .atg u tekstualni .ta format ; Hs2ta- transformacija hibridnih sistema u vremenske automate; Checkta sintaksika provjera tekstualnog opisa sistema vremenskih automata; Verifyta - Provjera modela (verifikacija se odvija unazad).
UPPAAL
Proirenje vremenskih automata u UPPAAL-u
Template automata definie se kao set parametara koji mogu biti bilo kojeg tipa (npr. int, chan i sl.). Konstante deklariu se kao const name value. Ograniene cjelobrojne varijable deklariu se kao int[min,max] name, gdje su min i max donja i gornja granica, respektivno. Guard-ovi, invariant-i i asignment-i mogu sadrati izraze ije vrijednosti prelaze granice ogranienih cjelobrojnih varijabli. Binarni sinhronizacijski kanali deklariu se kao chan c. Tranzicija (engl. edge) oznaena sa c! se sinhronizira sa drugom tranzicijom koja je oznaena sa c?. Broadcast kanali deklariu se kao broadcast chan c. U broadcast sinhronizaciji jedan predajnik c! moe da se sinhronizira sa veim brojem prijemnika c?. Ukoliko nema prijemnika, predajnik ipak moe izvriti c! akciju (broadcast slanje nije nikad zabranjeno, odnosno blokirano). Hitni sinhronizacijski kanali deklariu se tako to se ispred obine deklaracije kanala doda kljuna rije urgent. U ovom sluaju, ne smiju postojati kanjenja ukoliko se tranzicija izvrava na hitnom kanalu. Tranzicije koje koriste iste hitne kanale za sinhronizaciju ne smiju imati vremenska ogranienja, npr. guard-ove satova.
UPPAAL
Proirenje vremenskih automata u UPPAAL-u Lokacija - poetna - hitne - izvrive - obine Izrazi - Invarijant poseban izraz koji vrijedi samo za cjelobrojne vrijednosti, konstante i satove.
UPPAAL
Proirenje vremenskih automata u UPPAAL-u
Edge Izrazi
- Select labela sadri zarezom odvojenu listu name : type izraza gdje je name ime varijable i type definisani tip. - Guard je poseban izraz kojem se dodjeljuje boolean vrijednost. Samo satovi, cjelobrojne varijable i konstante (ili nizovi ovih tipova) mogu imati guard-ove. - Sinhronizacijska labela je u obliku Expression!, Expression? ili je prazna. Ovim izrazima se dodjeljuju vrijednost kanala. Asignment labela je zarezom-odvojena lista izraza sa popratnim efektima.. Assigment izrazi se izvravaju kada se njima odgovarajua tranzicija izvri.
UPPAAL
TCTL Query jezik Formule stanja - je izraz koji moe vrijediti za neko stanje bez provjere ponaanje modela. Pomou ovih formula se moe provjeriti da li je neki proces na datoj lokaciji koritenjem izraza oblika P.1 gdje je P proces i 1 traena lokacija. Formule putanja - Svojstva dostupnosti - Svojstva sigurnosti - Liveness svojstva
UPPAAL
TCTL Query jezik Svojstva dostupnosti
- E <> p ::= mogue je
pronai stanje za koji vrijedi logika p. Odnosno postavlja se pitanje da li postoji putanja koja poinje u inicijalnom stanju, takva da na kraju p bude zadovljena du te putanje. Ovo su tzv. 'Mogua' svojstva.
UPPAAL
TCTL Query jezik Svojstva dostupnosti
- A <> p ::= 'neizbjeno p', automat e sigurno dostii stanje u kojem je p istinito (p je istinito u nekoliko stanja na svim putanjama). Odnosno, postavlja se pitanje da li e p biti na kraju zadvoljeno du svih putanja koje poinju u inicijalnom stanju. Ovo su tzv. 'Konana' svojstva.
UPPAAL
TCTL Query jezik Svojstva sigurnosti
- A [] p::= Postavlja se pitanje da li je p istinito u svim dostupnim stanjima. Ovo su tzv. 'Invarijantna' svojstva.
UPPAAL
TCTL Query jezik Svojstva sigurnosti
- E [] p::= Postoji putanja na kojoj je p istinito za sva stanja. Odnosno, postavlja se pitanje da li postoji najvea putanja, takva da je p uvijek istinito. Pri emu se najvea putanja definie kao putanja koja je ili beskonana ili kod koje posljednje stanje nema izlaznih tranzicija. Ovo su tzv. 'Potencijalna' svojstva.
UPPAAL
TCTL Query jezik Livness svojstva
- p - - > f ::= p uvijek vodi ka f, to se moe oznaiti kao p A <> f. To znai da kad god je p zadovljeno, na kraju e i f biti zadovoljeno. Ovo su tzv. 'Vodi ka' svojstva.
Agenda
1 2 3 4 5
(Automati:
- Sistemska deklaracija
Agenda
1 2 3 4 5
Zakljuak
Vremenski automati su efikasan formalni jezik za opis ponaanja sistema, pogotovo sistema koji imaju izraene uvjete u vremenskoj domeni. Cilj razvoja UPPAAL-a je uvijek bio da poslui kao platforma u istraivanju vremenskih automata. Kao takav, vrlo je vaan alat koji obezbjeuje fleksibilnu arhitekturu za eksperimentisanje. Postupak verifikacije u UPPAAL-u je efikasan i jednostavan, iz razloga to je sistemom mogue upravljati pomou satova a i injenicom da je omoguena potpuna automatizacija sistema