Nir Piterman Department of Computer Science TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA Bypassing Complexity.

Slides:



Advertisements
Similar presentations
Model Checking Lecture 3. Specification Automata Syntax, given a set A of atomic observations: Sfinite set of states S 0 Sset of initial states S S transition.
Advertisements

A Survey of Runtime Verification Jonathan Amir 2004.
M ODEL CHECKING -Vasvi Kakkad University of Sydney.
CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
1 Fault Diagnosis for Timed Automata Stavros Tripakis VERIMAG.
Automatic Verification Book: Chapter 6. What is verification? Traditionally, verification means proof of correctness automatic: model checking deductive:
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
ECE Synthesis & Verification - L271 ECE 697B (667) Spring 2006 Synthesis and Verification of Digital Systems Model Checking basics.
Dana Nau: Lecture slides for Automated Planning Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License:
Game-theoretic approach to the simulation checking problem Peter Bulychev Vladimir Zakharov Lomonosov Moscow State University.
C&O 355 Mathematical Programming Fall 2010 Lecture 20 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Interface-based design Philippe Giabbanelli CMPT 894 – Spring 2008.
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
Combining Symbolic Simulation and Interval Arithmetic for the Verification of AMS Designs Mohamed Zaki, Ghiath Al Sammane, Sofiene Tahar, Guy Bois FMCAD'07.
Krishnendu Chatterjee1 Partial-information Games with Reachability Objectives Krishnendu Chatterjee Formal Methods for Robotics and Automation July 15,
Alpaga A Tool for Solving Parity Games with Imperfect Information Dietmar Berwanger 1 Krishnendu Chatterjee 2 Martin De Wulf 3 Laurent Doyen 3,4 Tom Henzinger.
Presenter: PCLee – This paper outlines the MBAC tool for the generation of assertion checkers in hardware. We begin with a high-level presentation.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Review of topics Final exam : -May 2nd to May 7 th - Projects due on May 7th.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 Formal Models for Stability Analysis : Verifying Average Dwell Time * Sayan Mitra MIT,CSAIL Research Qualifying Exam 20 th December.
CMPT 354, Simon Fraser University, Fall 2008, Martin Ester 52 Database Systems I Relational Algebra.
3/25  Monday 3/31 st 11:30AM BYENG 210 Talk by Dana Nau Planning for Interactions among Autonomous Agents.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Approaches to Reactive System Synthesis J.-H. Roland Jiang.
Handling non-determinism and incompleteness. Problems, Solutions, Success Measures: 3 orthogonal dimensions  Incompleteness in the initial state  Un.
A logic for reasoning about digital rights Riccardo Pucella, Vicky Weissman Cornell University.
ESE601: Hybrid Systems Introduction to verification Spring 2006.
Invisible Invariants: Underapproximating to Overapproximate Ken McMillan Cadence Research Labs TexPoint fonts used in EMF: A A A A A.
Flavio Lerda 1 LTL Model Checking Flavio Lerda. 2 LTL Model Checking LTL –Subset of CTL* of the form: A f where f is a path formula LTL model checking.
Solving Games Without Determinization Nir Piterman École Polytechnique Fédéral de Lausanne (EPFL) Switzerland Joint work with Thomas A. Henzinger.
1 Carnegie Mellon UniversitySPINFlavio Lerda Bug Catching SPIN An explicit state model checker.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
Institute for Applied Information Processing and Communications 1 Karin Greimel Semmering, Open Implication.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Computational Intelligence: Methods and Applications Lecture 31 Combinatorial reasoning, or learning from partial observations. Włodzisław Duch Dept. of.
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
Model Checking Lecture 3 Tom Henzinger. Model-Checking Problem I |= S System modelSystem property.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
1 Automatic Refinement and Vacuity Detection for Symbolic Trajectory Evaluation Orna Grumberg Technion Haifa, Israel Joint work with Rachel Tzoref.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
On Reducing the Global State Graph for Verification of Distributed Computations Vijay K. Garg, Arindam Chakraborty Parallel and Distributed Systems Laboratory.
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: LTL Model Checking Copyright , Matt Dwyer, John Hatcliff,
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Byzantine fault-tolerance COMP 413 Fall Overview Models –Synchronous vs. asynchronous systems –Byzantine failure model Secure storage with self-certifying.
CS 367: Model-Based Reasoning Lecture 5 (01/29/2002) Gautam Biswas.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Design Patterns VIII Chain of Responsibility, Strategy, State.
Verification & Validation By: Amir Masoud Gharehbaghi
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CSCI1600: Embedded and Real Time Software Lecture 28: Verification I Steven Reiss, Fall 2015.
Lecture 4 Page 1 CS 111 Online Modularity and Virtualization CS 111 On-Line MS Program Operating Systems Peter Reiher.
1 Proving program termination Lecture 5 · February 4 th, 2008 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A.
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
Variants of LTL Query Checking Hana ChocklerArie Gurfinkel Ofer Strichman IBM Research SEI Technion Technion - Israel Institute of Technology.
Specify, Compile, Run: Hardware from PSL Speaker: Chen-Hsuan Adonis Lin Advisor: Jie-Hong Roland Jiang 2016年2月22日星期一 2016年2月22日星期一 2016年2月22日星期一 1.
Sometimes Structural Recursion Isn't Enough CS 5010 Program Design Paradigms “Bootcamp” Lesson 8.1 TexPoint fonts used in EMF. Read the TexPoint manual.
From Natural Language to LTL: Difficulties Capturing Natural Language Specification in Formal Languages for Automatic Analysis Elsa L Gunter NJIT.
Today’s Agenda  Quiz 4  Temporal Logic Formal Methods in Software Engineering1.
Model Checking Lecture 1: Specification Tom Henzinger.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Program Synthesis is a Game
Alternating tree Automata and Parity games
CSEP590 – Model Checking and Automated Verification
CSCI1600: Embedded and Real Time Software
Introduction to verification
Presentation transcript:

Nir Piterman Department of Computer Science TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAAA Bypassing Complexity in Synthesis

Design Synthesis Build systems directly from declarative specifications. Systems will be produced algorithmically. Systems ensured to match specifications.

Environment System i0i0 i1i1 i2i2 i3i3 f(i 0 ) f(i 0 i 1 ) f(i 0 i 1 i 2 ) time

Classical Solution How to bridge the logic/specification world and the graph world? Idea: – Translate the specification to an automaton. – Combine the automaton and the game. Catches: – Must use deterministic automata. Determinization is extremely complex. Overall, the transformation is doubly exponential. – Parity winning conditions. Complex game analysis that requires the evaluation of nested greatest and least fixpoints.

Simplify What do specifications actually look like? – Partitioned to assume and guarantee. – Conjunctions where each property is typically small. – Overwhelming majority are safety properties.

Specifications are simple! Restrict to subset of specification language: – Invariance in linear time [RW89]. – Recurrence in quadratic time [AMPS95]. – Generalized Reactivity[1] in quadratic time [PPS06].

The subset we consider We would like to say: use to restrict initial states use to restrict transitions

Different Cultures Hardware Behavior is via Boolean variables. PSL used as specification language. Model Driven Development Labeled Transition Systems used as formal models. Fluent linear temporal logic used as specification language.

How to represent models? Symbolically Game graph is defined implicitly by adding variables to BDDs. Transitions are linear in the specifications. Create from them the transition relation. Solve the game symbolically: algorithms handle sets of states. Symbolic algorithm requires O(nm|Σ| 2 ) symbolic next step computations. Enumeratively Game graph is defined by considering explicit states. Part of safety is embedded in the graph. Solve the game enumeratively: algorithms handle states one by one. Enumerative algorithm works in O(nm|Σ|  |T|).

AMBA Bus Industrial standard ARM’s AMBA AHB bus High performance on-chip bus Data, address, and control signals Up to 16 masters and 16 clients Arbiter part of bus (determines control signals)

The subset we consider We would like to say: Easy to synthesize:

Are they the same? Check realizability of: If not, there is an environment that realizes the environment specification for every system. The environment is compatible. If yes, – there may be something wrong in the specification. – The environment needs the system’s cooperation.

Good Features Best Effort Controller: – Will avoid assumptions if this is the only way to guarantee goals. Assumption Preserving: – Will only avoid assumptions if it is impossible to fulfill them. In compatible environments all possible controllers are both.

If you insist … Reduce safety to liveness. – Memorize if the system violated safety. – The system does not violate safety in the long run.

More General Specifications Many interesting properties converted to this fragment. Use deterministic Büchi automata: – Add variables / states to the game. – Add winning condition to liveness. Use past: – Past formulas are easy to convert to deterministic automata.

The world isn’t perfect … Our game notion assumes perfect information and perfect control. What if things are unknown? – Ask Krishnendu … – Getting full information from time to time we may have a partial bypass … What if there is mixed control?

Mixed Control Classical control: either environment or system. What if things don’t fall nicely to either?

Strong Fairness The environment controls the fault. But, – it has to be strong fair … Two problems: 1.This is very expensive. 2.This is not exactly what we want.

What is that? This is some sort of persistence. If I wait long enough, – it will eventually happen! What will the controller do? – Keep on trying!

So what do we do? Complexity of analysis does not change. Controllers are persistent: – keep on retrying. Is this notion appropriate?

Summary Theoretical solution well known since 1969/1989. Still provides motivation for a lot of theoretical and practical work. In theory, theory and practice are the same.

End! Thank you! Universidad de Buenos Aires

Strong Fairness not Enough try 1 try 2 try 1 succ 2 fail 2 succ 1 fail 1 succ 2 fail 2 succ 1 fail 1

Model Driven Development Controllable

Model Driven Development Labeled Transition Systems used as formal models. Fluent linear temporal logic used as specification language. Issues with synthesis: – Enumerative representation. – Event based. – Success and failure of actions. – Embedding of fluents.

Requirements Safety: Don’t start working unless requested to. Each service is bought once per request. Reserve all before trying to buy. Reply to user only when all bought. Liveness: Finish all transactions. Faults: Failures (success / fail) behave nicely.