Upload
mikayla-osborne
View
14
Download
0
Embed Size (px)
DESCRIPTION
Állapotegyenlet alkalmazásai validációban és verifikációban. Varró-Gyapay Szilvia gyapay @mit.bme.hu BME Méréstechnika és Információs Rendszerek Tanszék Dr. Pataricza Andr ás fóliái alapján. Bevezető. Eredet Modális logika: filozófusok találmánya a lehetséges igazságok vizsgálata - PowerPoint PPT Presentation
Citation preview
2005.03.17. Formális módszerek az informatikában 2004/2005. 1
Állapotegyenlet alkalmazásai validációban és verifikációban
Varró-Gyapay [email protected]
BME Méréstechnika és Információs Rendszerek
Tanszék
Dr. Pataricza András fóliái alapján
2005.03.17. Formális módszerek az informatikában 2004/2005. 2
Bevezető
Eredet• Modális logika:
– filozófusok találmánya – a lehetséges igazságok vizsgálata
• Temporális logika: – a modális logika egy formális rendszere– kijelentések igazságának időbeli változásának
vizsgálata
2005.03.17. Formális módszerek az informatikában 2004/2005. 3
Használat
• Specifikáció, verifikáció és programhelyesség bizonyítása
• Implementációfüggetlen leírás – tulajdonságok, – követelmények.
• Alkalmazási kör:– rendszerek: a bemenetek és a kimenetek
kapcsolata • pl. folyamatosan működő, reaktív rendszerek,• protokollok, • operációs rendszerek.
2005.03.17. Formális módszerek az informatikában 2004/2005. 4
Temporális logikák osztályozása
Temporális kijelentés logika
• Atomi kijelentések• Logikai műveletek• Temporális operátorok
2005.03.17. Formális módszerek az informatikában 2004/2005. 5
Atomi kijelentések
Atomi kijelentések tartalmazhatnak:• Változók, konstansok• Függvények, prédikátumok• Kvantorok (,)
2005.03.17. Formális módszerek az informatikában 2004/2005. 6
Lineáris idejű temporális logika
• A (logikai) idő lineárisan halad: – minden állapotnak (időpillanatnak)
csak egy jövőbeli, rákövetkező állapota (időpillanata)
• Lineáris idő-szemantika, – az állapotok egy idővonal mentén követik
egymást
2005.03.17. Formális módszerek az informatikában 2004/2005. 7
Elágazó idejű temporális logika (BTL)
• A (logikai) idő elágazik: – egy állapotból (időpillanatból)
• többféle rákövetkező állapot, • többféle jövőbeli viselkedés
• Az idő szemantikája elágazó, – állapotok faszerűen elágazó idővonalak mentén
• Kvantorok az elágazó idővonalakra is
2005.03.17. Formális módszerek az informatikában 2004/2005. 8
Pont vagy intervallum logika
• Pont logika: – a temporális operátorok kiértékelése egy-egy
időpillanatban
• Intervallum logika: – a temporális operátorok időintervallumokra
definiáltak
2005.03.17. Formális módszerek az informatikában 2004/2005. 9
Múlt illetve jövő kezelése
• Általában a jövőbeli események leírása – Vizsgálat: a rendszerek kezdőállapotából indulva
• Múltbeli eseményekre való hivatkozás – egyes követelmények leírását megkönnyíti
2005.03.17. Formális módszerek az informatikában 2004/2005. 10
Lineáris temporális logika
Időkezelés:• diszkrét idő
– diszkrét, digitális rendszerek leírására;– izomorf a természetes számokkal (növekvő
sorrendezés)
• létezik megelőzőek nélküli kezdő időpillanat– rendszerek indítása
• a jövő végtelen – folyamatosan működő rendszerek
2005.03.17. Formális módszerek az informatikában 2004/2005. 11
Jelölésrendszer
• AP az atomi kijelentések halmaza (P, Q, P1, Q’, stb.)
• M=(S,x,L) lineáris időstruktúra, ahol S az állapotok halmazax : S S az állapotok végtelen sorozata (útvonal, idővonal)L : S (AP) az egyes állapotok címkézése azokkal az atomi kijelentésekkel, amelyek az adott állapotban érvényesek
2005.03.17. Formális módszerek az informatikában 2004/2005. 12
Temporális operátorok
• valamikor p, jelölése Fp (p valamikor a jövőben igaz lesz);
• mindig p, jelölése Gp (p mindig igaz)• következő p, jelölése Xp (p a következő
pillanatban igaz)• P amíg q, jelölése pUq (p igaz, amíg q nem
lesz)
2005.03.17. Formális módszerek az informatikában 2004/2005. 13
Temporális logikák jelentése
2005.03.17. Formális módszerek az informatikában 2004/2005. 14
Részleges döntés
S általánosítottrendszer felülről
kompatibilis
RendszerB specifikációja
T teljesülTeljesíti
T
Nem teljesítiT
Hamismegoldás
2005.03.17. Formális módszerek az informatikában 2004/2005. 15
Előny
• a fedést a szükséges feltétel garantálja• ha S-ben nem sérül a kívánt T tulajdonság,
akkor B-ben sem• ha S-ben sérül a kívánt T tulajdonság,
akkor nincs döntés:– vagy ellenpélda (B-ben van)– vagy hamis ellenpélda (Ha S-ben van).
Az S fedő probléma esetleg könnyebben megoldható, mint az eredeti B
2005.03.17. Formális módszerek az informatikában 2004/2005. 16
Petri-hálók: közelítő megoldások
Indirekt példát keresünk!Írjuk fel az ellenpélda szekvencia algebrai
jellemzőit!
– állapotegyenlet– peremfeltételek– és a CÉL negáltja
és lássuk be, hogy nincsen ilyen!
2005.03.17. Formális módszerek az informatikában 2004/2005. 17
Korlátosság vizsgálata
Ha PN(N, M0) korlátos és elakadásmentes, tüzelhető T-invariáns, melyre
T 0, 0
T T
2005.03.17. Formális módszerek az informatikában 2004/2005. 18
Korlátosság vizsgálata
Ha PN(N, M0) korlátos és elakadásmentes, tüzelhető T-invariáns, melyre
• A korlátosság miatt az állapottér véges.• Az elakadásmentesség miatt van egy
M0-ból induló végtelen tüzelési sorozat.
• Ebben a végesség miatt vanismétlődő állapot.
• A szekvencia T invariáns.
T 0, 0
T T
0' ( , )M R N M
: ' '
T M M
2005.03.17. Formális módszerek az informatikában 2004/2005. 19
Következmény
ha nincsen ilyen T-invariáns a korlátos hálóban, a hálózat minden úton elakad (nincs ciklusa).
2005.03.17. Formális módszerek az informatikában 2004/2005. 20
Élőség vizsgálata
Ha PN(N, M0) élő, korlátos tüzelhető T-invariánsa, melyre .
T
: ( ) 0
Tt T t
2005.03.17. Formális módszerek az informatikában 2004/2005. 21
Gondolatmenet
Ha PN(N, M0) élő, korlátos olyan tüzelési szekvencia amelyikben minden tT tranzíció sokszor előfordul
• Élőség miatt minden állapotból létezik tüzelési szekvencia, amely minden tranzíciót tartalmaz.
• Ezen tüzelési szekvenciákat követve a bejárt végállapotok között a végesség miatt van ismétlődő állapot.
• Ezen ismétlődő állapotok közötti tüzelési szekvenciának pontosan egy olyan T-invariáns felel meg, amelyre
0
T
0' ( , )M R N M
2005.03.17. Formális módszerek az informatikában 2004/2005. 22
Következmény
• Ha nincs ilyen T-invariáns a korlátos hálóban, akkor a háló nem élő.
• Ha egy tT tranzíció nincs benne egyetlen T-invariánsban sem – nincs benne egyetlen ciklusban sem – csak véges sokszor tüzelhet.
2005.03.17. Formális módszerek az informatikában 2004/2005. 23
Összefüggőség
Minden összefüggő Petri-háló, amelynek van• egy pozitív T és• egy pozitív P-invariánsa,
erősen öszefüggő.
2005.03.17. Formális módszerek az informatikában 2004/2005. 24
Összefüggőség
• A pozitív P-invariáns miatt a háló korlátos nincs benne forrás tranzíció minden tranzíciónak van bemeneti helye.
• Pozitív T-invariáns minden tranzícióból minden tranzíció elérhető minden bemenő helyről elérhető minden tranzíció.
• Tfh. létezik olyan hely, amelynek nincs kimenő tranzíciója pozitív T-invariáns miatt ezen a helyen sem változhat meg az invariáns tüzelése során a tokenek száma ellentmondás.
2005.03.17. Formális módszerek az informatikában 2004/2005. 25
Biztos Petri-háló
Biztos:Tüzelési feltétel:(Jelölés: pontosan azokban a pozíciókban
1, ahol a Z-beli elemek vannak.)
0( , ) : : ( ) 1 M R N M p P M p
t M t Z
2005.03.17. Formális módszerek az informatikában 2004/2005. 26
Tények
Kérdés: igaz-e, hogy
• valamely PN(N, M0) biztos Petri-hálóban
• minden teljes és véges tüzelési szekvencia (teljes szekvencia: nincsen újabb tüzelés)
végrehajt egy -beli tüzelést.Példa: Igaz-e, hogy a villamosjegy-automata, ha
bedobom a 100 Ft-ost• kiad egy jegyet• vagy visszaadja a pénzt.
Z T
2005.03.17. Formális módszerek az informatikában 2004/2005. 27
Tények algebrai vizsgálata
Legyen PN(N, M0) biztos, súlyozatlan Petri-háló, melynek:
• a belső tranzíciói: {t1…tb},
• a cél: • minden teljes és véges tüzelési
szekvencia végrehajt egy -beli tüzelést, ha az
Z T
Z T
2005.03.17. Formális módszerek az informatikában 2004/2005. 28
Feltétel
0
1 0 1
0
0
0
0
b b
M W
Z
t M W t
t M W t
állapotegyenlet
tüzelési szám vektor
nincs tZ tüzelés -ben
t1 nem tüzelhető
…
tb nem tüzelhető
1 0 0 M M W
Az egyenletnek nincsen megoldása a nemnegatív egészek felett.
2005.03.17. Formális módszerek az informatikában 2004/2005. 29
Feltételes célok
Kérdés: Igaz-e, hogy valamely PN(N, M0) biztos, Petri-hálóban minden teljes és véges tüzelési szekvencia,
• ha végrehajt egy vagy több Z T –beli tüzelést,
• utána biztosan végrehajt Z’ T –beli tüzelést is?
• Példa: ha valamelyik lakótársam vacsorázik, elmosogat-e utána?
• Lineáris temporális logikai kifejezés átfogalmazása!
2005.03.17. Formális módszerek az informatikában 2004/2005. 30
Tétel (indirekt)
PN(N, M0) biztos, súlyozatlan Petri-háló, melynek
• A tranzíciói:{t1,…,tb},
• Minden teljes és véges tüzelési szekvencia, ha végrehajt Z T –beli tüzelést, utána biztosan végrehajt Z’ T –beli tüzelést is, ha az
2005.03.17. Formális módszerek az informatikában 2004/2005. 31
Feltétel
0 1
1
1 1
1 0 1 1
0 1
0 2
2
2 2
0
0
'
0
0
'
b b
M W
Z Z
t M W t
t M W t
M W
Z Z
1 0 1 0 M M W
1 tüzelési szám
t1 nem tüzelhető
…tb nem tüzelhető
2 tüzelési szám
2 0 2 0 M M W
Az egyenletrendszernek sem 1 sem 2 megoldása nem létezik.
2005.03.17. Formális módszerek az informatikában 2004/2005. 32
Bizonyítás
Legyen egy olyan -beli tüzelést végrehajtó teljes szekvencia, ami nem hajt végre -beli tüzelést.
1.eset: Ha valamely kezdetében többször fordul elő Z’-beli tüzelés, mint Z-beli megoldás.
2. eset: Ha nem,– Akkor minden kezdetében
– Abban is, amely a Z-beli tüzelést pont megelőzi
– Azt is figyelembe véve
0
M M
Z T'Z T
*
2* ' * *
Z Z
*
* ' *Z Z
* ' *Z Z
* ' *Z Z
2005.03.17. Formális módszerek az informatikában 2004/2005. 33
+1 tétel
Ha egy Petri-hálónak van pozitív P-invariánsa, akkor a háló korlátos.
(Biz: a P-invariáns által meghatározott súlyozott összeg felső korlát a helyeken levő tokenek számára.)
A megfordítása nem igaz!!!