introduction to formal verification
play

Introduction to Formal Verification Ian Mitchell Department of - PowerPoint PPT Presentation

CPSC 513: Integrated Systems Design Introduction to Formal Verification Ian Mitchell Department of Computer Science The University of British Columbia On behalf of Mark Greenstreet & Alan Hu Integrated Systems Design Lab Fall Semester,


  1. CPSC 513: Integrated Systems Design Introduction to Formal Verification Ian Mitchell Department of Computer Science The University of British Columbia On behalf of Mark Greenstreet & Alan Hu Integrated Systems Design Lab Fall Semester, 2008-2009

  2. What is Verification? product creation (one engineer’s view) market research product sales & & funding engineering support verification design production testing & validation informal formal simulation model checking theorem proving equivalence Lyapunov emulation checking functions 9 Sept 08 Ian Mitchell (UBC Computer Science) 2

  3. Why Use Formal Verification? • Preproduction verification & validation – Physical prototypes are too slow, costly, complex, and/or dangerous to use during iterative design – Much cheaper to discover bugs earlier in the design process • Simulation for early design work – User designed test cases can find most bugs – Random testing can uncover unexpected bugs – Comprehensive input and/or behavior coverage is often impossible • Verification for (some) late design work – Safety critical or high reliability applications must not fail – May be easier, cheaper and/or faster to apply formal methods than to design comprehensive tests 9 Sept 08 Ian Mitchell (UBC Computer Science) 3

  4. Course Topics I • Introduction – Overview: why should you take this course? – Administrivia: how do you get a good grade (and hopefully learn something)? • Circuit equivalence, BDDs and SAT • Dynamic models and logics – Transition systems, finite state machines & automata – Well-posed models, Markovian assumption, nondeterminism – Temporal logics: CTL – Safety, liveness & fairness • Model checking – Explicit state – Symbolic • Software verification 9 Sept 08 Ian Mitchell (UBC Computer Science) 4

  5. Course Topics II • Fixpoint methods – Concurrent models: synchronous & asynchronous – Weakest precondition – Invariants & progress functions – Synchronized Transitions • Timed automata – Finite state bisimulation • Hybrid systems – Differential equations for continuous systems – Well-posed hybrid models – Lyapunov functions – Reachability • Models of computation – Soundness, completeness and complexity – Moving between MoCs 9 Sept 08 Ian Mitchell (UBC Computer Science) 5

  6. Administrivia • http://www.cs.ubc.ca/~mitchell/Class/CS513.2008W1 • Prerequisites: – Graduate standing (CS, math, engineering) – Backgrounds vary, so will try to keep course self-contained – Be comfortable with logic and proof • Grades – 3 – 5 homework assignments and/or leading class discussions – Course project (proposal, oral presentation, written report) • Collaboration – Work together on the problem, but write your own solutions – Cite your sources • References – No required text – No course notes – Many research papers 9 Sept 08 Ian Mitchell (UBC Computer Science) 6

  7. Conceptual Framework • Models – How do we describe the behavior of the system? – Circuits, finite state machines, programs, differential equations, … • Goals – What verification or validation task would we like to accomplish? – Equivalence, safety, liveness, fairness, refinement, … • Techniques – What mathematical framework allows us to formally state the problem and determine a solution? – Canonical forms, reachable sets, restricted design languages, Lyapunov functions, fixpoint iteration, … • Tools – How do we implement the operations of our technique? – Binary decision diagrams, Hamilton-Jacobi PDEs, compilers, … • Case studies – Real problems validated or verified 9 Sept 08 Ian Mitchell (UBC Computer Science) 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend