Directed Model Checking (not only) for Timed Automata
|
|
- Hugh Chad Elliott
- 5 years ago
- Views:
Transcription
1 Directed Model Checking (not only) for Timed Automata Sebastian Kupferschmid March, 2010
2 Model Checking Motivation Embedded Systems Omnipresent Safety relevant systems Pentium bug Ariane 5 Errors can be extremely harmful Correct functioning is absolutely mandatory
3 Model Checking Correct Systems Every system state satisfies invariant M, s 0 = ϕ Erroneous Systems Find error states fast Short error traces M, s 0 = ϕ full state space Directed Model Checking Combination of Artificial Intelligence and Model Checking Accelerate the search to error states with heuristic functions
4 Outline Introduction Timed Automata Directed Model Checking Coming up with Heuristics in a Principled Way Pattern Database Heuristics Pattern selection strategies Summary Empirical evaluation of several heuristics Literature
5 Timed Automata Syntax Definition (Timed Automaton) A timed automaton A is a tuple L, l 0, E, X, V, Σ, I, where L finite set of locations, l 0 L the initial location, X finite set of clocks, V finite set of integer variables, Σ synchronization symbols, E finite set of edges, and I assigns invariants to locations. x 1 c? s 0 x := 0 s 1 x 1 c? x < 1 x 1 s 2
6 Timed Automata Semantics Semantics States assign values to Automata, Integer variables, and Clocks Transitions Discrete Delay infinite transition system A possible Behavior x 1 c? x 1 c? s 0 x := 0 s 1 x < 1 x s 2 1 s 1 s 0 s 0 x 1 s time
7 The Zone Graph Symbolic State Space The Zone Graph Finite & exact abstraction of the timed automata semantics A symbolic state corresponds to a set of states that have the same discrete part and the clock values satisfy a conjunction of clock constraints, a so called zone x 1 c? x 1 c? s 0 x := 0 s 1 x < 1 x 1 s 2 s.. 0,... s 0,.. x 0 x < s 0,.. s 1, s.. 0,... x = 0 x = 0 x s 0, s.... 2,... x 1 x s 0, s.. 1,.. s 2,.. x = 1 x 1 x < 1
8 Model Checking Task Definition (Model Checking Task) A model checking task T is a tuple M, ϕ, where M = A 1... A n is a system of timed automata ϕ is an error formula
9 Directed Model Checking Objective in DMC Given: a model checking task T = M, ϕ with corresponding symbolic state space S(M) = S, s 0, T t... n sn 1 sn, t Find: a sequence π = s 1 t 0 2 s1 where s i S, s i t i si+1 T, and s n = ϕ Approach: informed search algorithm heuristic function
10 Directed Model Checking Model Checking + Heuristic Search Definition (heuristic function) Let T = M, ϕ be a model checking task and let S(M) = S, s 0, T be the state space of M. A heuristic function (or heuristic) is a function h : S N 0 { }. The heuristic estimate h(s) for a state s S is supposed to estimate the distance from s to the nearest error state.
11 Heuristic Search The General Idea distance estimate init distance estimate distance estimate distance estimate error
12 The Properties of Heuristics Definition (perfect heuristic) Let T = M, ϕ and let S(M) = S, s 0, T. The perfect heuristic of S(M) is the heuristic h which maps each state s S to the length of a shortest path from s to any error state. Note: h (s) = iff no error state is reachable from s. Heuristic h is called admissible if h(s) h (s) for all states s S safe if h (s) = for all s S with h(s) = goal-aware if h(s) = 0 for all error states s S consistent if h(s) h(s ) + 1 for all nodes s, s S s. t. s s T
13 A Generic Informed Search Algorithm 1 function dmc(m, ϕ, h): 2 open = empty priority queue 3 closed = 4 open.insert(s 0, priority(s 0, h)) 5 while open do: 6 s = open.getminimum() 7 if s = ϕ then: 8 return True 9 if s closed then: 10 closed = closed {s} 11 for each s succs(s) do: 12 open.insert(s, priority(s, h)) 13 return False
14 Heuristic Search Methods A Search priority(s, h) = depth(s) + h(s) If h is admissible shortest possible error traces Often high memory consumption Greedy Search priority(s, h) = h(s) Expands fewer states than A in practice No guarantee on error trace length
15 Dominance Definition (Dominance) Let h, h be two admissible heuristics. The heuristic h dominates h iff s S : h(s) > h (s) Theorem Let h, h be two admissible heuristics. If h dominates h, then every state explored by A with h is also explored by A with h.
16 Heuristics for Directed Model Checking Requirements for h 1. Accurate (with respect to h ) The closer the better It has to work well in practice 2. Efficiently computable for any state s Heuristic has to be computed for every encountered state Efficient = low-order polynomial in T 3. Derived automatically for a given model checking task Based on the declarative description of T No user interaction
17 A Simple Heuristic for Directed Model Checking Hamming Distance Heuristic The minimal number of variable values that have to be changed in order to turn s into an error state e. h(s) = min #different values(s, e) e S:e =ϕ Intuition The more similar to an error state the closer to an error state.
18 Criticism of the Hamming Distance Heuristic What is wrong with the Hamming distance heuristic? Quite uninformative: the range of heuristic values is small; typically, most successors have the same estimate Sensitive to reformulation: can easily transform any MC task into an equivalent one where h(s) = 1 for all non-error states (how?) Ignores almost all problem structure: heuristic values do not depend on the set of transitions! need a better, principled way of coming up with heuristics
19 Coming up with Heuristics in a Principled Way In this Lecture: Pattern Database Heuristics State-of-the-art heuristics Based on abstractions Fully automatically generated No user interaction Applicable to a wide range of transition systems
20 A Design Principle for Heuristics The General Idea Given A model checking task T = M, ϕ with Corresponding state space S(M) = S, s 0, T A Generic Approach for Obtaining Heuristics Select an overapproximation T α of T with T α = M α, ϕ α and S(M α ) = S α, s α 0, T α For every state s S encountered during the search Find a (shortest) error trace π in S α, s α, T α h(s) = π
21 A Design Principle for Heuristics The General Idea Original Transition System Overapproximation
22 A Design Principle for Heuristics The General Idea Original Transition System Overapproximation s s α h(s) = 2
23 Pattern Database (PDB) Heuristics Prior to Search Choose an abstraction α For every abstract state s α S(M α ) = S α, s α 0, T α Compute abstract error distance dist α (s α ) Store s α, dist α (s α ) in lookup table (the pattern database) During Search Map state s to corresponding abstract state s α Heuristic value: h(s) = d(s α )
24 How to Choose the Abstraction? The Original State Space
25 How to Choose the Abstraction? The Trivial Abstraction
26 How to Choose the Abstraction? The Identity Abstraction
27 How to Choose the Abstraction? The Perfect Abstraction
28 Conflicting Requirements Requirements for the Heuristic Informativeness (quality) Has to work well in practice Requirements for the Abstraction Efficient to compute Not too many abstract states Succinct representation (memory requirement) Question: where is the sweet-spot?
29 Two Different Abstraction Classes Predicate Abstraction Abstract state space defined by a set of selected predicates Use SAT or SMT to construct abstract state space Fine-grained Variable Abstraction Special case of predicate abstraction Ignores subset of the system s variables Abstract model in same formalism (can be constructed with the same tool, often more efficient than general purpose SAT solvers)
30 Pattern Selection What kind of pattern shall we use? Definition (Pattern) A pattern is a set of variables/predicates used to define a system. In this Lecture Cone-of-influence-based pattern selection Pattern selection using counterexamples Syntax-based pattern selection A local search approach
31 Pattern Selection for Variable Abstractions Pattern P Subset of the variables that are used to define the system e. g., clocks, automata, synchronization labels,... Abstraction of M with respect to P = {P, y, c, g} P M = P Q c! left g? x := 0 walk x > 2 right M α = P α c! P α g? x > 2 x := 0 left walk right y 2 y 2 Q red y 1 c? y := 0 yellow g! green red y 1 c? y := 0 yellow g! green
32 Patterns and Overapproximations But: P = {P, y, c, g} does not induce an overapproximation! Why... P c! g? x > 2 x := 0 left walk right P α c! g? x > 2 x := 0 left walk right y 2 y 2 Q red y 1 c? y := 0 yellow g! green Q α red y 1 c? y := 0 yellow g! green
33 Patterns and Overapproximations But: P = {P, y, c, g} does not induce an overapproximation! Why... P c! g? x > 2 x := 0 left walk right P α c! g? x > 2 x := 0 left walk right y 2 y 2 Q red y 1 c? y := 0 yellow g! green Q α red y 1 c? y := 0 yellow g! green... because P α = walk is not reachable (synchronization)
34 Closure of Patterns Definition (closed pattern) A pattern P is closed iff {b a P : a depends on b} P Consequences Closed patterns overapproximation Overapproximation: all error paths are preserved Overapproximation admissible heuristics Note: every abstraction set can be closed
35 Cone-of-influence-based Pattern Selection A COI-based Method Given: a model checking task T = M, ϕ and a bound b N 0. Return: Where: P = b i=0 P i P 0 = vars(ϕ) P i+1 = {v v P i : v can influence v }
36 Illustrating Example Cone of Influence Let T = M, P = right be a model checking task and let b = 1, M = P Q Cone of Influence P c! left g? x := 0 walk x > 2 right c P g x Q red y 2 y 1 c? y := 0 yellow g! green Q y
37 Illustrating Example Cone of Influence Let T = M, P = right be a model checking task and let b = 1, M = P Q Cone of Influence P c! left g? x := 0 walk x > 2 right P = c P g x Q red y 2 y 1 c? y := 0 yellow g! green Q y then P = {P, c, g, x}.
38 COI-based Pattern Selection Concluding Comments User interaction (bound b) Small values of b uninformed heuristic Larger values of b quickly converges towards original system Can be difficult to select good values for b
39 Counterexample-based Pattern Selection The Method Use the monotonicity abstraction Compute abstract error trace for the abstract MC problem Relevant variables: all variables that occur in the declarative description of the transitions that are involved in the abstract error trace Pattern P Contains all relevant variables No user interaction
40 The Monotonicity Abstraction Adaptation of Ignoring negative Effects Idea Abstract variables are set-valued A variable, once it obtained a value keeps that value forever Variables in the Abstraction v dom(v) v + dom(v) v := w v + := v + w + Clocks in the Abstraction Trivialize very fast ignored in the abstraction
41 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions P + = {l 1 }, v + = {0}, w + = {0}
42 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3}
43 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3} l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1, 2}, w + = {0, 3}
44 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions 2. Remove unnecessary transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3} l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1, 2}, w + = {0, 3}
45 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions 2. Remove unnecessary transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3} l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1, 2}, w + = {0, 3}
46 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions 2. Remove unnecessary transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3} l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1, 2}, w + = {0, 3}
47 The Monotonicity Abstraction Computing Abstract Error Traces P l 1 w := 3 v 0 v := v + 1 l 3 l 2 Initial state: P = l 1, v = 0, w = 0 Error formula: ϕ = (v 2) Computation of Abstract Error Traces 1. Simultanios execution of all enabled transitions 2. Remove unnecessary transitions P + = {l 1 }, v + = {0}, w + = {0} l 1 l 2 l 1 l 2 l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1}, w + = {0, 3} l 1 l 3 P + = {l 1, l 2, l 3 }, v + = {0, 1, 2}, w + = {0, 3} l 1 w:=3 l 3 does not occur in the abstract error trace w P
48 Concluding Comments Where does it work, where not Works well for modular systems with little interaction (many real-world applications) Problems with systems with tight interaction identity abstraction
49 Pattern Selection for Predicate Abstractions Abstract State Space P = {p 1,..., p n } set of predicates that talk about the variables of the system Abstract states b assign each p P a truth value (can be represented as bitstrings) An abstract state b corresponds to the set of concrete states [b] = {s s = b} There is an abstract transition t = b b iff s [b] and s [b ] such that s s is a concrete transition
50 Syntax-based Pattern Selection Pattern P Set of predicates containing: All constraints that appear in guards or location invariants For each location: a location predicate Example P Q c! left red g? x := 0 walk y 2 y 1 c? y := 0 yellow x > 2 g! right green P = {P = left, P = walk, P = right, Q = red, Q = yellow, Q = green, x > 2, y 1, y 2}
51 Mapping Concrete to Abstract States Predicate Abstraction Mapping Concrete to Abstract States Let P = {p 1,... p n } be a set of predicates. For every p P check if s = p abstract state s α Looking up abstract states is straight-forward
52 Concluding Comments Syntax-based Pattern Selection Can induce large pattern databases (many predicates) This can be overcome by splitting the system into several independent parts Construct PDB for each of these parts and Combine (maximize or add) heuristic values
53 A Local Search Approach to Pattern Selection Local search in the pattern space Given: the set of variables V used to define a system and a threshold for the maximum size of the PDB Start with pattern P = While P < threshold do Select v V \ P such that P = P {v} is better than P = P {w} for all w v P = P {v 1} {v i} {v n} {v i, v 1} {v i, v j} {v i, v n} Question: how can we measure the quality of a pattern?
54 Evaluating Patterns Estimating a PDB heuristic s quality A possible quality measurement Average heuristic value h of the PDB heuristic h induced by the pattern Intuition: if h dominates h, then h > h Problems What if there are dead ends that h can detect? (how to cope with?) For the evaluation the PDB has to be constructed (can be expensive)
55 Mapping Concrete to Abstract States Variable Abstraction Symbolic state space S Discrete part d Zone Z 1. S α in hash table s α = d α, Z α Bucket: states with equal discrete part d A, Z1 s = d, Z 2. Find Abstract States s = d α, Z with Z Z α d A, Z2 d A, Z3 3. Heuristic Value h(s) = min s S α{distα (s ) s s α } Z2 Z3 Z A Z1
56 The Big Question So far, we have seen Different abstractions Different approaches for pattern selection
57 The Big Question So far, we have seen Different abstractions Different approaches for pattern selection But... Which approach works best?
58 Empirical Evaluation Experimental Setup 2.66 GHz Intel Xeon, memout at 4 GB Implemented either in Mcta or Uppaal/DMC Single-tracked Line Segment (flawed version) ES2 LS2 CS2 ES1 CS1 LS PLC 1 PLC 2
59 Empirical Results A Search explored states C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 runtime in s Edelkamp et al. Based on plain graph distance Kupferschmid et al. Monotonicity abstraction Dräger et al. Iteratively merges two automata by abstracting their cross product Hoffmann et al. Qian et al. PDB heuristic: syntax-based pattern selection PDB heuristic: COI-based pattern selection, user interaction Kupferschmid et al. PDB heuristic: CE-based pattern selection C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9
60 Empirical Results Greedy Search 10 8 explored states 10 7 error trace length C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C runtime in s C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 Edelkamp et al. Kupferschmid et al. (monotonicity abstraction) Dräger et al. Hoffmann et al. Qian et al. Kupferschmid et al. (CE-based pattern selection)
61 Literature About this List This list is meant to be focused, not comprehensive. Hence, it is a somewhat subjective mix of papers we consider important and relevant to the lecture s topic. If a paper is not listed, there are many possible reasons: We do not know it. We forgot it. We do not think it is (sufficiently) important. It overlaps considerably with another paper listed here. Its topic is not close enough to the focus of this lesson (e. g., papers on domain-dependent search).
62 References: Directed Model Checking C. Han Yang and David L. Dill. Validation with guided search of the state space. In Proc. Conference on Design Automation, pp , First paper about MC + heuristic search Stefan Edelkamp, Alberto Lluch-Lafuente, and Stefan Leue. Directed explicit model checking with HSF-SPIN. In Proc. SPIN 2001, pp , Coined the term directed model checking Judea Pearl. Heuristics: Intelligent Search Strategies for Computer Problem Solving. Addison-Wesley, Discusses the foundations of heuristic search
63 References: Pattern Database Heuristics Joseph C. Culberson and Jonathan Schaeffer. Pattern databases. Computational Intelligence, 14(3): , First paper on pattern database heuristics Stefan Edelkamp. Symbolic pattern databases in heuristic search planning. In Proc. AIPS 2002, pp , Uses BDDs to store pattern databases more compactly. Kairong Qian and Albert Nymeyer. Guided invariant model checking based on abstraction and symbolic pattern databases. In Proc. TACAS 2004, pp , COI-based pattern selection
64 References: Pattern Database Heuristics (ctd.) Stefan Edelkamp. Automated creation of pattern database search heuristics. In Proc. MOCHART 2006, pp , First search-based pattern selection method. Jörg Hoffmann, Jan-Georg Smaus, Andrey Rybalchenko, Sebastian Kupferschmid, and Andreas Podelski. Using predicate abstraction to generate heuristic functions in Uppaal. In Proc. MOCHART 2006, pp , Uses predicate abstraction to generate PDB heuristics Sebastian Kupferschmid, Jörg Hoffmann, and Kim G. Larsen. Fast directed model checking via russian doll abstraction. In Proc. TACAS 2008, pp , Introduces CE-based pattern selection
65 References: Other Heuristics Sebastian Kupferschmid, Jörg Hoffmann, Henning Dierks, and Gerd Behrmann. Adapting an AI planning heuristic for directed model checking. In Proc. SPIN 2006, pp , Introduces the monotonicity abstraction (for model checking) Klaus Dräger, Bernd Finkbeiner, and Andreas Podelski. Directed model checking with distance-preserving abstractions. International Journal on Software Tools for Technology Transfer, 11(1):27 37, Introduces distance-preserving abstractions
66 References: Other Heuristics (ctd.) Martin Wehrle and Malte Helmert. The causal graph revisited for directed model checking. In Proc. SAS 2009, pp , Adapts the causal graph heuristic from AI planning Martin Wehrle, Sebastian Kupferschmid, and Andreas Podelski. Transition-based directed model checking. In Proc. TACAS 2009, pp , General framework to accelerate heuristic search
67 References: DMC Tools for Timed Automata Sebastian Kupferschmid, Klaus Dräger, Jörg Hoffmann, Bernd Finkbeiner, Henning Dierks, Andreas Podelski, and Gerd Behrmann. Uppaal/DMC abstraction-based heuristics for directed model checking. In Proc. TACAS 2007, pp , DMC extension of Uppaal Sebastian Kupferschmid, Martin Wehrle, Bernhard Nebel, and Andreas Podelski. Faster than Uppaal? In Proc. CAV 2008, pp , Open source directed model checker for timed automata
Principles of AI Planning
Principles of 7. Planning as search: relaxed Malte Helmert and Bernhard Nebel Albert-Ludwigs-Universität Freiburg June 8th, 2010 How to obtain a heuristic STRIPS heuristic Relaxation and abstraction A
More informationUseless Actions are Useful
Useless Actions are Useful Martin Wehrle and Sebastian Kupferschmid and Andreas Podelski University of Freiburg {mwehrle, kupfersc, podelski}@informatik.uni-freiburg.de Abstract Planning as heuristic search
More informationPrinciples of AI Planning
Principles of 5. Planning as search: progression and regression Malte Helmert and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 4th, 2010 Planning as (classical) search Introduction Classification
More informationPrinciples of AI Planning
Principles of 7. State-space search: relaxed Malte Helmert Albert-Ludwigs-Universität Freiburg November 18th, 2008 A simple heuristic for deterministic planning STRIPS (Fikes & Nilsson, 1971) used the
More informationPrinciples of AI Planning
Principles of AI Planning 5. Planning as search: progression and regression Albert-Ludwigs-Universität Freiburg Bernhard Nebel and Robert Mattmüller October 30th, 2013 Introduction Classification Planning
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationSymmetry Reduction and Heuristic Search for Error Detection in Model Checking p.1/??
Symmetry Reduction and Heuristic Search for Error Detection in Model Checking Workshop on Model Checking and Artificial Intelligence 10 August 2003 Alberto Lluch Lafuente? - Tilman Mehler? lafuente@informatikuni-freiburgde
More informationCEGAR:Counterexample-Guided Abstraction Refinement
CEGAR: Counterexample-guided Abstraction Refinement Sayan Mitra ECE/CS 584: Embedded System Verification November 13, 2012 Outline Finite State Systems: Abstraction Refinement CEGAR Validation Refinment
More informationTimed Automata VINO 2011
Timed Automata VINO 2011 VeriDis Group - LORIA July 18, 2011 Content 1 Introduction 2 Timed Automata 3 Networks of timed automata Motivation Formalism for modeling and verification of real-time systems.
More informationInformed Search. Chap. 4. Breadth First. O(Min(N,B L )) BFS. Search. have same cost BIBFS. Bi- Direction. O(Min(N,2B L/2 )) BFS. have same cost UCS
Informed Search Chap. 4 Material in part from http://www.cs.cmu.edu/~awm/tutorials Uninformed Search Complexity N = Total number of states B = Average number of successors (branching factor) L = Length
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
More informationSanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Explicit-State Model Checking: Additional Material Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: G. Holzmann Checking if M satisfies : Steps 1. Compute Buchi
More informationInformed Search. Day 3 of Search. Chap. 4, Russel & Norvig. Material in part from
Informed Search Day 3 of Search Chap. 4, Russel & Norvig Material in part from http://www.cs.cmu.edu/~awm/tutorials Uninformed Search Complexity N = Total number of states B = Average number of successors
More informationFact-Alternating Mutex Groups for Classical Planning (Extended Abstract)
Fact-Alternating Mutex Groups for Classical Planning (Extended Abstract) Daniel Fišer and Antonín Komenda Department of Computer Science, Faculty of Electrical Engineering, Czech Technical University in
More informationSoftware Verification with Abstraction-Based Methods
Software Verification with Abstraction-Based Methods Ákos Hajdu PhD student Department of Measurement and Information Systems, Budapest University of Technology and Economics MTA-BME Lendület Cyber-Physical
More informationHeuristics for Cost-Optimal Classical Planning Based on Linear Programming
Heuristics for Cost-Optimal Classical Planning Based on Linear Programming (from ICAPS-14) Florian Pommerening 1 Gabriele Röger 1 Malte Helmert 1 Blai Bonet 2 1 Universität Basel 2 Universidad Simón Boĺıvar
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Frank Hutter and Bernhard Nebel Albert-Ludwigs-Universität Freiburg
More informationSAT-Based Explicit LTL Reasoning
SAT-Based Explicit LTL Reasoning Jianwen Li 1,2 Shufang Zhu 2 Geguang Pu 2 Moshe Y. Vardi 1 1. Rice University 2. East China Normal University August 22, 2016 Temporal Reasoning Church, 1957: Given a model
More informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationSearch and Lookahead. Bernhard Nebel, Julien Hué, and Stefan Wölfl. June 4/6, 2012
Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Search and Lookahead Enforcing consistency is one way of solving constraint networks:
More informationSoftware Verification using Predicate Abstraction and Iterative Refinement: Part 1
using Predicate Abstraction and Iterative Refinement: Part 1 15-414 Bug Catching: Automated Program Verification and Testing Sagar Chaki November 28, 2011 Outline Overview of Model Checking Creating Models
More informationLecture 11: Timed Automata
Real-Time Systems Lecture 11: Timed Automata 2014-07-01 11 2014-07-01 main Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents & Goals Last Lecture: DC (un)decidability This Lecture:
More informationStructural Patterns Heuristics via Fork Decomposition
Patterns Heuristics via Fork Decomposition Michael Katz Carmel Domshlak Technion, IE&M ICAPS-08 Context Abstraction-based Admissible Heuristics for Cost-Optimal Classical Planning Classical Planning Planning
More informationReal-Time Systems. Lecture 10: Timed Automata Dr. Bernd Westphal. Albert-Ludwigs-Universität Freiburg, Germany main
Real-Time Systems Lecture 10: Timed Automata 2013-06-04 10 2013-06-04 main Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents & Goals Last Lecture: PLC, PLC automata This Lecture:
More informationModels for Efficient Timed Verification
Models for Efficient Timed Verification François Laroussinie LSV / ENS de Cachan CNRS UMR 8643 Monterey Workshop - Composition of embedded systems Model checking System Properties Formalizing step? ϕ Model
More informationSynthesising Certificates in Networks of Timed Automata
Synthesising Certificates in Networks of Timed Automata Bernd Finkbeiner Hans-Jörg Peter Saarland University {finkbeiner peter}@cs.uni-saarland.de Sven Schewe University of Liverpool sven.schewe@liverpool.ac.uk
More informationIC3 and Beyond: Incremental, Inductive Verification
IC3 and Beyond: Incremental, Inductive Verification Aaron R. Bradley ECEE, CU Boulder & Summit Middle School IC3 and Beyond: Incremental, Inductive Verification 1/62 Induction Foundation of verification
More informationChapter 3 Deterministic planning
Chapter 3 Deterministic planning In this chapter we describe a number of algorithms for solving the historically most important and most basic type of planning problem. Two rather strong simplifying assumptions
More informationAlan Bundy. Automated Reasoning LTL Model Checking
Automated Reasoning LTL Model Checking Alan Bundy Lecture 9, page 1 Introduction So far we have looked at theorem proving Powerful, especially where good sets of rewrite rules or decision procedures have
More information540 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 43, NO. 4, APRIL Algorithmic Analysis of Nonlinear Hybrid Systems
540 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 43, NO. 4, APRIL 1998 Algorithmic Analysis of Nonlinear Hybrid Systems Thomas A. Henzinger, Pei-Hsin Ho, Howard Wong-Toi Abstract Hybrid systems are digital
More informationThe algorithmic analysis of hybrid system
The algorithmic analysis of hybrid system Authors: R.Alur, C. Courcoubetis etc. Course teacher: Prof. Ugo Buy Xin Li, Huiyong Xiao Nov. 13, 2002 Summary What s a hybrid system? Definition of Hybrid Automaton
More informationTimo Latvala. March 7, 2004
Reactive Systems: Safety, Liveness, and Fairness Timo Latvala March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness 14-1 Safety Safety properties are a very useful subclass of specifications.
More informationOptimal Metric Planning with State Sets in Automata Representation
Proceedings of the Twenty-Third AAAI Conference on Artificial Intelligence (2008) Optimal Metric Planning with State Sets in Automata Representation Björn Ulrich Borowsky and Stefan Edelkamp Fakultät für
More informationRevising UNITY Programs: Possibilities and Limitations 1
Revising UNITY Programs: Possibilities and Limitations 1 Ali Ebnenasir, Sandeep S. Kulkarni, and Borzoo Bonakdarpour Software Engineering and Network Systems Laboratory Department of Computer Science and
More informationCMU Lecture 4: Informed Search. Teacher: Gianni A. Di Caro
CMU 15-781 Lecture 4: Informed Search Teacher: Gianni A. Di Caro UNINFORMED VS. INFORMED Uninformed Can only generate successors and distinguish goals from non-goals Informed Strategies that can distinguish
More informationLecture Notes on Software Model Checking
15-414: Bug Catching: Automated Program Verification Lecture Notes on Software Model Checking Matt Fredrikson André Platzer Carnegie Mellon University Lecture 19 1 Introduction So far we ve focused on
More informationLecture 4 Model Checking and Logic Synthesis
Lecture 4 Model Checking and Logic Synthesis Nok Wongpiromsarn Richard M. Murray Ufuk Topcu EECI, 18 March 2013 Outline Model checking: what it is, how it works, how it is used Computational complexity
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Bernhard Nebel Albert-Ludwigs-Universität Freiburg May 17, 2016
More informationBest-Case and Worst-Case Behavior of Greedy Best-First Search
Best-Case and Worst-Case Behavior of Greedy Best-First Search Manuel Heusner, Thomas Keller and Malte Helmert University of Basel, Switzerland {manuel.heusner,tho.keller,malte.helmert}@unibas.ch Abstract
More informationAnalyzing Tie-Breaking Strategies for the A Algorithm
Analyzing Tie-reaking Strategies for the A Algorithm Augusto. orrêa, André G. Pereira 2 and Marcus Ritt 2 University of asel, Switzerland 2 Federal University of Rio Grande do Sul, razil {abcorrea, agpereira,
More informationSymbolic Search and Abstraction Heuristics for Cost-Optimal Planning
Symbolic Search and Abstraction Heuristics for Cost-Optimal Planning Álvaro Torralba Advisors: Daniel Borrajo and Carlos Linares López Universidad Carlos III de Madrid June 2, 2015 Álvaro Torralba PhD
More informationAbout Partial Order Reduction in Planning and Computer Aided Verification
About Partial Order Reduction in Planning and Computer Aided Verification Martin Wehrle University of Basel, Switzerland University of Freiburg, Germany martin.wehrle@unibas.ch Malte Helmert University
More informationTowards Lightweight Integration of SMT Solvers
Towards Lightweight Integration of SMT Solvers Andrei Lapets Boston University Boston, USA lapets@bu.edu Saber Mirzaei Boston University Boston, USA smirzaei@bu.edu 1 Introduction A large variety of SMT
More informationSymmetry Reductions. A. Prasad Sistla University Of Illinois at Chicago
Symmetry Reductions. A. Prasad Sistla University Of Illinois at Chicago Model-Checking Concurrent PGM Temporal SPEC Model Checker Yes/No Counter Example Approach Build the global state graph Algorithm
More informationDistance? Who Cares? Tailoring Merge-and-Shrink Heuristics to Detect Unsolvability
Distance? Who Cares? Tailoring Merge-and-Shrink Heuristics to Detect Unsolvability Jörg Hoffmann and Peter Kissmann and Alvaro Torralba 1 Abstract. Research on heuristic functions is all about estimating
More informationMODEL CHECKING TIMED SAFETY INSTRUMENTED SYSTEMS
TKK Reports in Information and Computer Science Espoo 2008 TKK-ICS-R3 MODEL CHECKING TIMED SAFETY INSTRUMENTED SYSTEMS Jussi Lahtinen ABTEKNILLINEN KORKEAKOULU TEKNISKA HÖGSKOLAN HELSINKI UNIVERSITY OF
More informationSemantic Equivalences and the. Verification of Infinite-State Systems 1 c 2004 Richard Mayr
Semantic Equivalences and the Verification of Infinite-State Systems Richard Mayr Department of Computer Science Albert-Ludwigs-University Freiburg Germany Verification of Infinite-State Systems 1 c 2004
More informationScalable and Accurate Verification of Data Flow Systems. Cesare Tinelli The University of Iowa
Scalable and Accurate Verification of Data Flow Systems Cesare Tinelli The University of Iowa Overview AFOSR Supported Research Collaborations NYU (project partner) Chalmers University (research collaborator)
More informationEE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories. Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo
EE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories 1 Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo Outline: Contracts and compositional methods for system design Where and why using
More informationIMITATOR: A Tool for Synthesizing Constraints on Timing Bounds of Timed Automata
ICTAC 09 IMITATOR: A Tool for Synthesizing Constraints on Timing Bounds of Timed Automata Étienne ANDRÉ Laboratoire Spécification et Vérification LSV, ENS de Cachan & CNRS Étienne ANDRÉ (LSV) ICTAC 09
More informationCS360 Homework 12 Solution
CS360 Homework 12 Solution Constraint Satisfaction 1) Consider the following constraint satisfaction problem with variables x, y and z, each with domain {1, 2, 3}, and constraints C 1 and C 2, defined
More informationSoftware Verification
Software Verification Grégoire Sutre LaBRI, University of Bordeaux, CNRS, France Summer School on Verification Technology, Systems & Applications September 2008 Grégoire Sutre Software Verification VTSA
More information7. Propositional Logic. Wolfram Burgard and Bernhard Nebel
Foundations of AI 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard and Bernhard Nebel Contents Agents that think rationally The wumpus world Propositional logic: syntax and semantics
More informationCompilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam
Compilers Lecture 3 Lexical analysis Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Big picture Source code Front End IR Back End Machine code Errors Front end responsibilities Check
More informationComplexity Theory of Polynomial-Time Problems
Complexity Theory of Polynomial-Time Problems Lecture 1: Introduction, Easy Examples Karl Bringmann and Sebastian Krinninger Audience no formal requirements, but: NP-hardness, satisfiability problem, how
More informationApplication: Planning as Satisfiability (SATPlan) (Pre Lecture)
Application: Planning as Satisfiability (SATPlan) (Pre Lecture) Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2018 Dantam (Mines CSCI-561) Application: Planning as Satisfiability (SATPlan)
More informationUnbounded, Fully Symbolic Model Checking of Timed Automata using Boolean Methods
Unbounded, Fully Symbolic Model Checking of Timed Automata using Boolean Methods Sanjit A. Seshia and Randal E. Bryant Computer Science Department Carnegie Mellon University Verifying Timed Embedded Systems
More informationTIMED automata, introduced by Alur and Dill in [3], have
1 Language Inclusion Checking of Timed Automata with Non-Zenoness Xinyu Wang, Jun Sun, Ting Wang, and Shengchao Qin Abstract Given a timed automaton P modeling an implementation and a timed automaton S
More informationUPPAAL tutorial What s inside UPPAAL The UPPAAL input languages
UPPAAL tutorial What s inside UPPAAL The UPPAAL inut languages 1 UPPAAL tool Develoed jointly by Usala & Aalborg University >>8,000 downloads since 1999 1 UPPAAL Tool Simulation Modeling Verification 3
More informationLinear Temporal Logic and Büchi Automata
Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata
More informationAccuracy of Admissible Heuristic Functions in Selected Planning Domains
Accuracy of Admissible Heuristic Functions in Selected Planning Domains Malte Helmert Robert Mattmüller Albert-Ludwigs-Universität Freiburg, Germany AAAI 2008 Outline 1 Introduction 2 Analyses 3 Summary
More informationNew Complexity Results for Some Linear Counting Problems Using Minimal Solutions to Linear Diophantine Equations
New Complexity Results for Some Linear Counting Problems Using Minimal Solutions to Linear Diophantine Equations (Extended Abstract) Gaoyan Xie, Cheng Li and Zhe Dang School of Electrical Engineering and
More informationVinter: A Vampire-Based Tool for Interpolation
Vinter: A Vampire-Based Tool for Interpolation Kryštof Hoder 1, Andreas Holzer 2, Laura Kovács 2, and Andrei Voronkov 1 1 University of Manchester 2 TU Vienna Abstract. This paper describes the Vinter
More informationBounded Model Checking with SAT/SMT. Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39
Bounded Model Checking with SAT/SMT Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39 Recap: Symbolic Model Checking with BDDs Method used by most industrial strength model checkers:
More informationDesign of Distributed Systems Melinda Tóth, Zoltán Horváth
Design of Distributed Systems Melinda Tóth, Zoltán Horváth Design of Distributed Systems Melinda Tóth, Zoltán Horváth Publication date 2014 Copyright 2014 Melinda Tóth, Zoltán Horváth Supported by TÁMOP-412A/1-11/1-2011-0052
More informationDistance Estimates for Planning in the Discrete Belief Space
Distance Estimates for Planning in the Discrete Belief Space Jussi Rintanen Albert-Ludwigs-Universität Freiburg Institut für Informatik Georges-Köhler-Allee, 79110 Freiburg im Breisgau Germany Abstract
More informationOn Boolean Encodings of Transition Relation for Parallel Compositions of Transition Systems
On Boolean Encodings of Transition Relation for Parallel Compositions of Transition Systems Extended abstract Andrzej Zbrzezny IMCS, Jan Długosz University in Częstochowa, Al. Armii Krajowej 13/15, 42-2
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 8. Satisfiability and Model Construction Davis-Putnam-Logemann-Loveland Procedure, Phase Transitions, GSAT Joschka Boedecker and Wolfram Burgard and Bernhard Nebel
More informationMultimapping Abstractions and Hierarchical Heuristic Search
Multimapping Abstractions and Hierarchical Heuristic Search Bo Pang Computing Science Department University of Alberta Edmonton, AB Canada T6G 2E8 (bpang@ualberta.ca) Robert C. Holte Computing Science
More informationTimed Automata: Semantics, Algorithms and Tools
Timed Automata: Semantics, Algorithms and Tools Johan Bengtsson and Wang Yi Uppsala University {johanb,yi}@it.uu.se Abstract. This chapter is to provide a tutorial and pointers to results and related work
More informationOverview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?
Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits
More informationAn introduction to Uppaal and Timed Automata MVP5 1
An introduction to Uppaal and Timed Automata MVP5 1 What is Uppaal? (http://www.uppaal.com/) A simple graphical interface for drawing extended finite state machines (automatons + shared variables A graphical
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Wolfram Burgard, Maren Bennewitz, and Marco Ragni Albert-Ludwigs-Universität Freiburg Contents 1 Agents
More informationCS357: CTL Model Checking (two lectures worth) David Dill
CS357: CTL Model Checking (two lectures worth) David Dill 1 CTL CTL = Computation Tree Logic It is a propositional temporal logic temporal logic extended to properties of events over time. CTL is a branching
More informationReal-Time Systems. Lecture 15: The Universality Problem for TBA Dr. Bernd Westphal. Albert-Ludwigs-Universität Freiburg, Germany
Real-Time Systems Lecture 15: The Universality Problem for TBA 2013-06-26 15 2013-06-26 main Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents & Goals Last Lecture: Extended Timed
More informationFormal Verification Techniques. Riccardo Sisto, Politecnico di Torino
Formal Verification Techniques Riccardo Sisto, Politecnico di Torino State exploration State Exploration and Theorem Proving Exhaustive exploration => result is certain (correctness or noncorrectness proof)
More informationIntroduction to Arti Intelligence
Introduction to Arti Intelligence cial Lecture 4: Constraint satisfaction problems 1 / 48 Constraint satisfaction problems: Today Exploiting the representation of a state to accelerate search. Backtracking.
More informationAutomata-based Verification - III
COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationAlgorithms and Data Structures for Efficient Timing Analysis of Asynchronous Real-time Systems
University of South Florida Scholar Commons Graduate Theses and Dissertations Graduate School 1-1-2013 Algorithms and Data Structures for Efficient Timing Analysis of Asynchronous Real-time Systems Yingying
More informationTheory of Computer Science. Theory of Computer Science. E1.1 Motivation. E1.2 How to Measure Runtime? E1.3 Decision Problems. E1.
Theory of Computer Science May 18, 2016 E1. Complexity Theory: Motivation and Introduction Theory of Computer Science E1. Complexity Theory: Motivation and Introduction Malte Helmert University of Basel
More informationCounterexample-Guided Abstraction Refinement
Counterexample-Guided Abstraction Refinement Edmund Clarke Orna Grumberg Somesh Jha Yuan Lu Helmut Veith Seminal Papers in Verification (Reading Group) June 2012 O. Rezine () Verification Reading Group
More informationBounded LTL Model Checking with Stable Models
Bounded LTL Model Checking with Stable Models Keijo Heljanko and Ilkka Niemelä Helsinki University of Technology Dept. of Computer Science and Engineering Laboratory for Theoretical Computer Science P.O.
More informationAutomata-based Verification - III
CS3172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20/22: email: howard.barringer@manchester.ac.uk March 2005 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationCounterexamples for Robotic Planning Explained in Structured Language
Counterexamples for Robotic Planning Explained in Structured Language Lu Feng 1, Mahsa Ghasemi 2, Kai-Wei Chang 3, and Ufuk Topcu 4 Abstract Automated techniques such as model checking have been used to
More informationClock Matrix Diagrams
Clock Matrix Diagrams U N I V E R S I T A S S A R A V I E N I S S Bachelor s Thesis Daniel Fass daniel@react.cs.uni-sb.de Reactive Systems Group Department of Computer Science Universität des Saarlandes
More informationSymbolic Reachability Analysis of Lazy Linear Hybrid Automata. Susmit Jha, Bryan Brady and Sanjit A. Seshia
Symbolic Reachability Analysis of Lazy Linear Hybrid Automata Susmit Jha, Bryan Brady and Sanjit A. Seshia Traditional Hybrid Automata Traditional Hybrid Automata do not model delay and finite precision
More informationCS154, Lecture 18: 1
CS154, Lecture 18: 1 CS 154 Final Exam Wednesday December 12, 12:15-3:15 pm STLC 111 You re allowed one double-sided sheet of notes Exam is comprehensive (but will emphasize post-midterm topics) Look for
More informationTheory of Computer Science
Theory of Computer Science E1. Complexity Theory: Motivation and Introduction Malte Helmert University of Basel May 18, 2016 Overview: Course contents of this course: logic How can knowledge be represented?
More informationLocal Search Topology in Planning Benchmarks: An Empirical Analysis
Local Search Topology in Planning Benchmarks: An Empirical Analysis Jörg Hoffmann Institute for Computer Science Albert Ludwigs University Georges-Köhler-Allee, Geb. 52 79110 Freiburg, Germany Abstract
More informationModel checking the basic modalities of CTL with Description Logic
Model checking the basic modalities of CTL with Description Logic Shoham Ben-David Richard Trefler Grant Weddell David R. Cheriton School of Computer Science University of Waterloo Abstract. Model checking
More informationAnalysis of a Boost Converter Circuit Using Linear Hybrid Automata
Analysis of a Boost Converter Circuit Using Linear Hybrid Automata Ulrich Kühne LSV ENS de Cachan, 94235 Cachan Cedex, France, kuehne@lsv.ens-cachan.fr 1 Introduction Boost converter circuits are an important
More informationModel Checking: An Introduction
Model Checking: An Introduction Meeting 3, CSCI 5535, Spring 2013 Announcements Homework 0 ( Preliminaries ) out, due Friday Saturday This Week Dive into research motivating CSCI 5535 Next Week Begin foundations
More informationPart V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows
Matching Input: undirected graph G = (V, E). M E is a matching if each node appears in at most one Part V edge in M. Maximum Matching: find a matching of maximum cardinality Matchings Ernst Mayr, Harald
More informationScenario Graphs and Attack Graphs
Scenario Graphs and Attack Graphs Oleg Mikhail Sheyner CMU-CS-04-122 April 14, 2004 School of Computer Science Computer Science Department Carnegie Mellon University Pittsburgh, PA Thesis Committee: Jeannette
More informationPredicate Abstraction and Refinement for Verifying Multi-Threaded Programs
Predicate Abstraction and Refinement for Verifying Multi-Threaded Programs Ashutosh Gupta Corneliu Popeea Andrey Rybalchenko Institut für Informatik, Technische Universität München Germany {guptaa,popeea,rybal}@in.tum.de
More informationState-Space Exploration. Stavros Tripakis University of California, Berkeley
EE 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2014 State-Space Exploration Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE
More informationAlgorithms Exam TIN093 /DIT602
Algorithms Exam TIN093 /DIT602 Course: Algorithms Course code: TIN 093, TIN 092 (CTH), DIT 602 (GU) Date, time: 21st October 2017, 14:00 18:00 Building: SBM Responsible teacher: Peter Damaschke, Tel. 5405
More informationComputer-Aided Program Design
Computer-Aided Program Design Spring 2015, Rice University Unit 3 Swarat Chaudhuri February 5, 2015 Temporal logic Propositional logic is a good language for describing properties of program states. However,
More informationMinimal counter-example generation for SPIN
Minimal counter-example generation for SPIN Paul Gastin 1 and Pierre Moro 2 1 LSV, ENS Cachan & CNRS 61, Av. du Prés. Wilson, F-94235 Cachan Cedex, France, Paul.Gastin@lsv.ens-cachan.fr 2 LIAFA, Univ.
More information