Dijkstra f le leggyeng bbel felt tel kalkulus
This presentation is the property of its rightful owner.
Sponsored Links
1 / 16

Dijkstra-féle leggyengébbelőfeltétel-kalkulus PowerPoint PPT Presentation


  • 42 Views
  • Uploaded on
  • Presentation posted in: General

Dijkstra-féle leggyengébbelőfeltétel-kalkulus. [p]C[q]= sp. (C,s,C).n>0. n (C,s,C)(n)q.

Download Presentation

Dijkstra-féle leggyengébbelőfeltétel-kalkulus

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Dijkstra f le leggyeng bbel felt tel kalkulus

Dijkstra-féle leggyengébbelőfeltétel-kalkulus


Dijkstra f le leggyeng bbel felt tel kalkulus

[p]C[q]=sp.

(C,s,C).n>0.n(C,s,C)(n)q

A definícióból következik, hogy rögzítettCutasítás ésqutófeltétel mellett létezik leggyengébb (legbővebb) pelőfeltétel, amely mellett a totális helyesség még fennáll. Ezt jelöli a következőkben wp:

wp: Uts  Felt  Felt weakest precondition

wp(C,q) = { s : (C,s,C).n>0.n(C,s,C)(n)q }


Dijkstra f le leggyeng bbel felt tel kalkulus

A wp függvény alaptulajdonságai:

  • A csoda kizárásának elvewp(C,) = 

  • Művelettartáswp(C,q1q2) = wp(C,q1)wp(C,q2)

  • MonotonitásHa q1  q2, akkor wp(C,q1)  wp(C,q2)


Dijkstra f le leggyeng bbel felt tel kalkulus

A wp függvény és az utasítások:

  • A skip utasításwp(skip,q) = q

  • A determinisztikus értékadáswp(X:=E,q) = {s: s(X:=E(s))q}

  • A nemdeterminisztikus értékadáswp(X:=?,q) = {s: dD.s(X:=d)q}


Dijkstra f le leggyeng bbel felt tel kalkulus

A wp függvény és az utasítások:

  • A kompozíciówp((C1;C2), q) = wp(C1,wp(C2,q))

  • A determinisztikus szelekciówp((BC1C2), q) = (Bwp(C1,q))(Bwp(C2,q))

  • A nemdeterminisztikus szelekciówp((B1C1 B2C2), q) = (B1B2)(B1wp(C1,q))(B2wp(C2,q))


Dijkstra f le leggyeng bbel felt tel kalkulus

A wp függvény és az utasítások:

  • Az iteráció Feltételezés: (B*C) nemdeterminizmusa véges.wp((B*C),q) =lkfp(p.((Bq)  (Bwp(C,p))))

  • Ez megegyezik a p-re vonatkozó alábbi egyenlet legszűkebb megoldásával:p = (Bq)  (Bwp(C,p))

  • Ennek megoldása:

  • p0 = Bq,pi+1 = p0  (Bwp(C,pi))

  • wp((B*C),q) = i0 pi


Dijkstra f le leggyeng bbel felt tel kalkulus

{p}C{q} = ((pS)  C)  (Sq)

A definícióból következik, hogy rögzítettCutasítás ésqutófeltétel mellett létezik leggyengébb (legbővebb) pelőfeltétel, amely mellett a parciális (az eredménytelen végrehajtást is megengedő) helyesség még fennáll. Ezt jelöli a következőkben wlp:

wlp: Uts  Felt  Felt weakest liberal precondition

wlp(C,q) = { s : s'S. (s,s'C  s'q) }


Dijkstra f le leggyeng bbel felt tel kalkulus

A wlp függvény alaptulajdonságai:

  • wlp(C,S) = S

  • Művelettartáswlp(C,q1q2) = wlp(C,q1)  wlp(C,q2)

  • MonotonitásHa q1  q2, akkor wlp(C,q1)  wlp(C,q2)


Dijkstra f le leggyeng bbel felt tel kalkulus

A wlp függvény és az utasítások:

  • A skip utasításwlp(skip,q) = q

  • A determinisztikus értékadáswlp(X:=E,q) = {s: s(X:=E(s))q}

  • A nemdeterminisztikus értékadáswlp(X:=?,q) = {s: dD.s(X:=d)q}


Dijkstra f le leggyeng bbel felt tel kalkulus

A wlp függvény és az utasítások:

  • A kompozíciówlp((C1;C2), q) = wlp(C1,wlp(C2,q))

  • A determinisztikus szelekciówlp((BC1C2), q) = (Bwlp(C1,q))(Bwlp(C2,q))

  • A nemdeterminisztikus szelekciówlp((B1C1 B2C2), q) = (B1wlp(C1,q))(B2wlp(C2,q))


Dijkstra f le leggyeng bbel felt tel kalkulus

A wlp függvény és az utasítások:

  • Az iteráció wlp((B*C),q) =lnfp(p.((Bq)  (Bwlp(C,p))))

  • Ez megegyezik a p-re vonatkozó alábbi egyenlet legbővebb megoldásával:p = (Bq)  (Bwlp(C,p))

  • Ennek megoldása:

  • p0 = (Bq)  B, pi+1 = (Bq)  (Bwlp(C,pi))

  • wlp((B*C),q) =  i0 pi


Dijkstra f le leggyeng bbel felt tel kalkulus

{p}C{q} = ((pS)  C)  (Sq)

A definícióból következik, hogy rögzítettCutasítás éspelőfeltétel mellett létezik legerősebb (legszűkebb) qutófeltétel, amely mellett a parciális (az eredménytelen végrehajtást is megengedő) helyesség még fennáll. Ezt jelöli a következőkben slp:

slp: Felt Uts  Felt strongest liberal postcondition

slp(p,C) = { s : s'p. s',sC }


Dijkstra f le leggyeng bbel felt tel kalkulus

Az slp függvény alaptulajdonságai:

  • slp(,C) = 

  • Művelettartásslp(p1 p2 ,C,) = slp(p1,C)  slp(p2,C)

  • MonotonitásHa p1  p2, akkor slp(p1,C)  slp(p2,C)


Dijkstra f le leggyeng bbel felt tel kalkulus

Az slp függvény és az utasítások:

  • A skip utasításslp(p, skip) = p

  • A determinisztikus értékadásslp(p, X:=E) = {s(X:=E(s)): sp}

  • A nemdeterminisztikus értékadásslp(p, X:=?) = {s: dD. s(X:=d)p}(d itt az X eredeti tartalma)


Dijkstra f le leggyeng bbel felt tel kalkulus

Az slp függvény és az utasítások:

  • A kompozícióslp(p, (C1;C2)) = slp( slp(p, C1), C2)

  • A determinisztikus szelekcióslp(p, (BC1C2)) =slp(pB, C1)  slp(pB, C2)

  • A nemdeterminisztikus szelekcióslp(p, (B1C1 B2C2)) = slp(pB1, C1)  slp(pB2, C2)


Dijkstra f le leggyeng bbel felt tel kalkulus

Az slp függvény és az utasítások:

  • Az iteráció slp(p,(B*C)) =lkfp(q. (pslp(qB,C)))B

  • Ez megegyezik a q-ra vonatkozó alábbi egyenlet legszűkebb megoldásával:q = p  slp((qB), C)

  • Ennek megoldása:

  • q 0 = p, q i+1 = slp((q iB), C)

  • slp(p, B*C) = ( i0 q i)  B


  • Login