l10 - CS 267 Automated Verification Lecture 10 LTL Buchi...

Info iconThis preview shows pages 1–9. Sign up to view the full content.

View Full Document Right Arrow Icon
CS 267: Automated Verification Lecture 10: LTL Buchi Automata Translation, Nested Depth First Search Instructor: Tevfik Bultan
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
LTL We are going to discuss LTL to Buchi automata translation First let’s recall LTL semantics I will also add a new operator called R (release) to make the translation to Buchi automata easier
Background image of page 2
LTL Semantics Given an execution path x and LTL properties p and q x |= p iff L(x 0 , p) = True, where p AP x |= ¬ p iff not x |= p x |= p q iff x |= p and x |= q x |= p q iff x |= p or x |= q x |= X p iff x 1 |= p x |= G p iff for all i 0, x i |= p x |= F p iff there exists an i 0 such that x i |= p x |= p U q iff there exists an i 0 such that x i |= q and for all 0 j < i, x j |= p x |= p R q iff for all j 0, if for all 0 i < j, x i |= p then x j |= q
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
LTL Equivalences Given an LTL formula convert it to positive normal form: Negations are only applied to atomic propositions (there is no negation outside of a temporal operator) Use the following equivalences to translate the LTL formulas to positive normal form: ¬ (p U q) ¬ p R ¬ q ¬ (p R q) ¬ p U ¬ q ¬ (X p) X ¬ p ¬ (p R q) ¬ p U ¬ q F p true U p G p false R p
Background image of page 4
LTL Buchi Automata Translation [Gerth, Peled, Vardi, Wolper 95] Each state of the automata will store a set of properties that should be satisfied on paths starting at that state These properties will be stored in lists Old and New where Old means already processed and New means still needs to be processed Each state will also store a set of properties which should be satisfied on paths starting at the next states of that state These properties will be stored in the list Next The incoming transitions for a state will be stored in the list Incoming
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
LTL Buchi Automata Translation We will start with a node which has the input LTL property in its New list We will process the formulas in the New list of each node one by one When we have f U g in the New list we will use f U g g (f X ( f U g)) When we have f R g in the New list we will use f R g g (f X (f R g))
Background image of page 6
LTL Buchi Automata Translation When we process a formula from a node we will either replace the node with a new node or we will replace it with two new nodes (i.e., we will split it to two nodes) When a node q is replaced by a node q’ we will have (Old(q) New(q) X Next(q)) (Old(q’) New(q’) X Next(q’)) – When a node q is split into two nodes q 1 and q 2 we will have (Old(q) New(q) X Next(q)) ( (Old(q 1 ) New(q 1 ) X Next(q 1 )) (Old(q 2 ) New(q 2 ) X Next(q 2 )) ) Means conjunction of all the formulas in these lists
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Translate(f) { expand([Incoming:={init}, Old:= , New:={f}, Next:= ], ) } Expand(q, NodeList) { If New(q) is empty then if there exists a node r in NodeList s.t. Old(r) = Old(q) and Next(r) = Next(q)
Background image of page 8
Image of page 9
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/27/2011 for the course CMPSC 267 taught by Professor Bultan during the Fall '09 term at UCSB.

Page1 / 25

l10 - CS 267 Automated Verification Lecture 10 LTL Buchi...

This preview shows document pages 1 - 9. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online