• Non ci sono risultati.

Introduction to Formal Methods Chapter 00: Course Overview

N/A
N/A
Protected

Academic year: 2021

Condividi "Introduction to Formal Methods Chapter 00: Course Overview"

Copied!
11
0
0

Testo completo

(1)

Introduction to Formal Methods Chapter 00: Course Overview

Roberto Sebastiani

DISI, Università di Trento, Italy – roberto.sebastiani@unitn.it URL: http://disi.unitn.it/rseba/DIDATTICA/fm2020/

Teaching assistant: Enrico Magnago – enrico.magnago@unitn.it

CDLM in Informatica, academic year 2019-2020

last update: Monday 18thMay, 2020, 14:48

Copyright notice: some material (text, figures) displayed in these slides is courtesy of R. Alur, M. Benerecetti, A. Cimatti, M.

Di Natale, P. Pandya, M. Pistore, M. Roveri, and S.Tonetta, who detain its copyright. Some exampes displayed in these slides are taken from [Clarke, Grunberg & Peled, “Model Checking”, MIT Press], and their copyright is detained by the authors. All the other material is copyrighted by Roberto Sebastiani. Every commercial use of this material is strictly

(2)

Target

The course will be given in English.

The course is intended for 1 st or 2 nd year M.S. students in

computer science ("corso di laurea magistrale in informatica"), but

it is open to whoever may be interested, in particular to PhD

students of ICT school.

(3)

Requirements

A background knowledge on the following topic is strongly advisable for the course:

Boolean logic

Some background knowledge on the following topics is advisable for the course:

automata & formal languages

basic algorithms and data structures

SW engineering

(4)

Motivations & Goals

Formal methods are increasingly used as powerful specification, verification and early debugging methods in the development of industrial SW and HW systems.

This course provides an introduction to Formal Techniques and Tools for the specification and verification of Hardware and Software platforms.

The course will concentrate mainly on formal validation and verification and, in particular, on Model Checking (MC).

A laboratory will be given in which the students will experience MC

techniques by means of the MC NuXMV.

(5)

Topics

FM Course:

Introduction on formal techniques and their benefits Formal specification & formal validation

Model Checking (MC) Temporal logics: LTL & CTL

Ordered Binary Decision Diagrams (OBDDs) Explicit-State MC, LTL MC

Symbolic MC, CTL MC SAT-based MC

More advanced developments:

Abstraction in MC

MC with Timed and Hybrid Systems

(6)

Topics (cont.)

Laboratory:

The MC NuXMV

Modeling and verifying systems with NuXMV

(7)

References

Notes from the lessons

Slides (available from the URL of the course)

Other material (available from the URL of the course) The NuXMV manual

Suggested books (in alternative):

Edmund Clarke, Orna Grumberg and Doron Peled.

"Model Checking”

MIT Press

Christel Baier and Joost-Pieter Katoen .

"Principles of Model Checking”

MIT Press

(8)

Disclaimer

Some of the material presented in these slides (text, figures) is courtesy of the following people, listed in alphabetical order:

Massimo Benerecetti (bene@na.infn.it) Alessandro Cimatti (cimatti@fbk.eu) Paritosh Pandya (pandya@tifr.res.in) Marco Pistore (pistore@disi.unitn.it) Marco Roveri (roveri@fbk.eu)

Stefano Tonetta (tonettas@fbk.eu).

Furthermore, some examples are taken from the book:

[E. Clarke, O. Grunberg & D. Peled, “Model Checking”, MIT Press]

(9)

Timetable & Office Hours

Timetable: 2 nd Semester, February 17 th -May 29 th CLASS: Tuesday 11.30-13.30 Room A203 CLASS: Thursday 14.30-17.30 Room B105 LAB: Friday 09.30-11.30 Room A202 Office hours:

no weekly fixed-day

anytime in the week, upon appointment

appointments to be set in class or via email

Office hours only during class period (see above)!

(10)

Exam

2 parts:

Script

a lab part on NuXMV

the script test, on the topics of the course Oral Interview

interview on the topics of the course.

N.B.: students from the previous year(s) having already their lab or

script part passed/approved can skip the lab or part part respectively.

(11)

To copy at exams very dangerous is!

Riferimenti

Documenti correlati

Copyright notice: some material (text, figures) displayed in these slides is courtesy of R..

Given a fair Kripke model M, a fair non-trivial SCC is an SCC with at least one edge that contains at least one state for every fair condition. =⇒ all states in a fair (non-trivial)

Example: although state 3 belongs to sat(¬heat Uclose), the path which loops forever in 3 does not satisfy ¬heatUclose, as close never holds in that path. We restrict the

[Alternatively: there is no positive U-subformula, so that we must add a AGAF> fairness condition, which is equivalent to say that all states belong to the fairness

Given the following generalized Büchi automaton A def = hQ, Σ, δ, I, FT i, with two sets of accepting states FT def = {F 1, F 2} s.t.. Ex:

From LTL Formulas to Büchi Automata: generalities On-the-fly construction of Bu¨chi Automata from LTL Complexity..

limited sensitivity: one good setting, does not require expert users much higher capacity (more variables) than BDD based techniques Various techniques: Bounded Model

all but one literals in η are as “old” as possible Learning: in future branches, when all-but-one literals in η are assigned, the remaining literal is assigned to false