Die Präsentation wird geladen. Bitte warten

# Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.

## Präsentation zum Thema: "Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für."—  Präsentation transkript:

Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik

Slide 2 H. Schlingloff, SS2012: SWV 2 Recap: LTL and CTL Expressively equivalent to FOL (<) on linear orders Arguably more intuitive to use Kripke models = LTS branching time – possibility properties linear time – fairness properties CTL* subsumes both CTL and LTL 24.5.2012

Slide 3 H. Schlingloff, SS2012: SWV 2 Safety and Liveness 24.5.2012

Slide 4 H. Schlingloff, SS2012: SWV 2 Some Theorems Every LTL formula can be written in one of these forms (where p is a pure past formula) Every LTL safety property is expressible as G * φ (where φ is pure past) Every LTL formula can be written as reactivity (G * F * φ F * G * ψ) All the inclusions are strict All the non-inclusions are provable (dualities) e.g. F * G * p cannot be expressed as G * F * φ Conjunction and disjunction of a recurrence is a recurrence G * F * p G * F * q = G * F * (P * p P * q), where P * p = TU - p ??? G * F * p G * F * q = G * F * (p q) Obligations can be expressed as recurrences and persistences G * p = G * F * H * p, F * p = G * F * P * p, where H * p = ¬P * ¬p 12.4.2012

Slide 5 H. Schlingloff, SS2012: SWV 2 Safety and Liveness Properties Proof of decomposition theorem: φ s ={w 0 w 1... | for every i, w 0 w 1... w i is a prefix of φ} φ l = φ {w 0 w 1... | for some i, w 0 w 1... w i is not a prefix of φ} show: φ s is safety, φ l is liveness, φ = φ s φ l 24.5.2012

Slide 6 H. Schlingloff, SS2012: SWV 2 Examples (p U + q) = ((p W + q) F + q) G*(p F*q) = (G*p G*F*q) G*p G*q = G*(H*p H*q) (gilt nur initial, im Anfangspunkt!) Total program correctness = invariance termination other direction does not hold 24.5.2012

Ähnliche Präsentationen