Formal Methods && Tools Group Stefania Gnesi F F F - - PowerPoint PPT Presentation

formal methods tools group
SMART_READER_LITE
LIVE PREVIEW

Formal Methods && Tools Group Stefania Gnesi F F F - - PowerPoint PPT Presentation

F F F Formal Methods && Tools Group Stefania Gnesi F F F M&&T M&&T M&&T June 27, 03 Formal Methods && Tools Group - ISTI CNR CAF - 1 F F F Outline Overview of the Formal Methods


slide-1
SLIDE 1

CAFÉ - 1 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

Formal Methods && Tools Group

Stefania Gnesi

slide-2
SLIDE 2

CAFÉ - 2 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

  • Overview of the Formal Methods && Tools Lab

Who we are

  • Research activities
  • Projects
  • More info on the Lab:
  • http://matrix.iei.pi.cnr.it/FMT
  • Outline
slide-3
SLIDE 3

CAFÉ - 3 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

Research Staff Patrizia Asirelli Tommaso Bolognesi Giorgio Faconti Alessandro Fantechi External Collaborator-Univ. Firenze Stefania Gnesi Diego Latella Mieke Massink Franco Mazzanti Maurice ter Beek ERCIM fellolw Giuseppe Lami PHD student (Ingegneria Informatica-Pisa) Gabriele Lenzini PHD student (Twente-NL) Associated Research Staff Maria Lisa Masseti Gianluca Trentanni

Who we are

slide-4
SLIDE 4

CAFÉ - 4 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

The Formal Methods && Tools Group is active in the fields of development and application of formal notations, methods and software support tools for the specification, design and verification of complex computer systems. These systems often must meet real-time, security constraints and are used in safety-critical missions where also human factors play a major role.

Formal Specification and Verification of Complex Systems

slide-5
SLIDE 5

CAFÉ - 5 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

We are currently involved in research activities in the areas of:

  • Model-checking algorithms,tools and applications
  • Quantitative extensions of Process Algebras e related tools
  • Formal Approaches to the modeling of Human-Computer Interaction
  • Precise UML
  • Formal Approaches to Requirements Engineering
  • Integration of process-algebraic, state-based and functional

specification models

Formal Specification and Verification of Complex Systems

slide-6
SLIDE 6

CAFÉ - 6 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

The Formal Methods && Tools Group is active in several international and national projects: * AGILE, Architectures for Mobility Information Societies Technology (IST PROGRAMME IST-2001-32747,! 2002-2004) * CAFE, IT EUREKA Project! "Information Technology for European Advancement" (ITEA, 2001-2003) * PRIDE, ambiente di PRogettazione Integrato per sistemi Dependable (Italian Space Agency, 2002-2003) * SP4- High-Quality Service Software Architectures for Global Computing on Co-operative Wide Area Networks (MURST 5% 2002-2004) * PROFUNDIS, Proofs of Functionality for Mobile Distributed Systems (IST PROGRAMME IST-2001-33100,! 2002-2004) * QUACK, A Platform for the Quality of New Generation Integrated Embedded Systems (Progetto MURST 40%, 2002-2003) * COVER (Progetto MURST 40%, 2003-2004) * MEFISTO, Metodi Formali per la Sicurezza ed il Tempo (Progetto MURST 40%, 2002- 2003)

Current Projects activity

slide-7
SLIDE 7

CAFÉ - 7 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

The Formal Methods && Tools Group has developed several verification tools: * JACK Project ! (Just Another Concurrency Kit) – AMC: ACTL model checker for fc2 automatons – BMC: BDD based ACTL+ model checker for networks of automata – FMC: (fmc, totab, tofc2) a set of tools for exploration and verification of networks of automata, including an "on the fly" model checker for full m-calculus (ACTL-compatible) * HAL (History-dependent Analysis Laboratory): P-calculus verification environment – PMC P-logic model checker – HAL on Line: P-calculus verification environment directly on the web.

  • UMCTOOLS: (um, totab, xmi2umc) a set of tools for the exploration and verification of

networks of automata, including an "on the fly" model checker for full m-calculus and UML statemachines As well as tools for supporting the analysis of NL requirements: * QuARS Quality Analyzer of Requirements Specifications (in collaboration with CCS)

Software Tools development

slide-8
SLIDE 8

CAFÉ - 8 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F Model checking mobile systems

map map map map HD-automata HD-logic Unfold. Unfold. Model and equivalence Check Minimization Ordinary automata Ordinary automata Logic for ordinary automata Logic for ordinary automata CCS with CCS with pi-calculus pi-calculus localities localities Petri nets Petri nets pi-calculus logic pi-calculus logic JACK

slide-9
SLIDE 9

CAFÉ - 9 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

p-calculus requires an infinite number of states also for very simple agents. The creation of a new name gives rise to an infinite set of transitions: one for each choice of the new name. In HD-automata names appear explicitly in states, transitions and labels (local names) . Local names do not have a global identity. In this way, for instance, a single state of the HD-automaton can be used to represent all the states of a system that differ just for a bijective renaming.

JACK for MOBILITY HD -automata

slide-10
SLIDE 10

CAFÉ - 10 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

in?a in?b … … P(in,out) ::= in?(x). out! x nil

  • ut!a.ni

l

  • ut!a
  • ut!b.nil
  • ut!b

ni l nil P(in,out)

...

x,in,out Œ N

N infinite sets of names in, out: channels x : place holder THE SEMANTICS MODEL OF P IS: INFINITE STATE INFINITE BRANCHING

slide-11
SLIDE 11

CAFÉ - 11 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

in?(x)

map:{a->out, b->x}

FROM p-calculus to HD-AUTOMATA P(in,out) ::= in?(x). out! x nil a!b.nil

names: {a,b}

a!b a!a Nil

names: {}

P(in,out)

names:{in,out} names:{...} local names

map:{a->out, b->x} embedding function from names of the target state to the source state

in?(x) input fresh name in?out

map:{a->out}

a!a.nil

names: {a}

in?in

map:{a->out, b->in}

slide-12
SLIDE 12

CAFÉ - 12 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

in?(a) in?in FROM HD-AUTOMATA TO LTSS P(in,out) ::= in?(x). out! x nil

  • ut!a.ni

l

  • ut!

a

  • ut!in.nil
  • ut!out

nil P(in,out) in,out are the active names of P

a fresh name

in?out

  • ut!out.nil
  • ut!in
slide-13
SLIDE 13

CAFÉ - 13 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

The HAL environment: an overview

HAL is written in C++ and compiles with the GNU C++ compiler (the GUI is written in Tcl/Tk). It is currently running on SUN stations (under SUN-OS) and

  • n PC stations (under Linux).
slide-14
SLIDE 14

CAFÉ - 14 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

The p-logic: sintax

p-logic syntax --> f ::= true | ~ f| f L f f L f | E E X{m}f | <m> f | E f | <m> f | E F f

m ::= tau | x!y |x!(y) | x?y

E E X{m}f f strong next <m> f <m> f weak next E E F f eventually As usual [m] f, [m] f, AG f f can be defined by duality p-logic is adequate with respect to strong early bisimulation equivalence

slide-15
SLIDE 15

CAFÉ - 15 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

From p-logic to ACTL

A translation function exists from p-logic to ACTL soundness : a p-logic formula is satisfied by a p -calculus agent P if and only if the finite state ordinary automaton associated with P satisfies the corresponding ACTL formula The translation of a formula is thus not unique, but depends on the agent P. Specifically, it depends on the set S of the fresh names of the ordinary automaton associated with the agent P.

slide-16
SLIDE 16

CAFÉ - 16 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

in?(a) in?in Model checking facilities P(in,out) ::= in?(x). out! x nil

  • ut!a.ni

l

  • ut!

a

  • ut!in.nil
  • ut!out

nil P(in,out)

EX {in?u}EX{out!u} true (p-logic) EX {in?(a)}EX{out!a} true (ACTL) a fresh name

in?out

  • ut!out.nil
  • ut!in
slide-17
SLIDE 17

CAFÉ - 17 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

Verification on the web

Development of a distributed environment for the verification of properties of distributed, mobile systems.

– Tool developed using different specification and verification methodologies – Different platforms and languages.

slide-18
SLIDE 18

CAFÉ - 18 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F Web application for mobile systems

Web as infrastructure Specification and verification modules= WEB services

Interaction based on HTTP/XML plus

  • remote invocation (e.g. \xmlrpc\, SOAP),
  • directory and service binding (e.g. UDDI, trader),
  • language to express service features (e.g. WSDL)

It will become the standard functional platform to programming applications over the WEB.

slide-19
SLIDE 19

CAFÉ - 19 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

A formal operational semantics for a behavioural subset of UML Statechart Diagrams (UMLSDs) including a formal proof of their correctness with respect to major UML semantics requirements concerning behavioural issues Conceptual issues related to building a tool for both linear and branching Time model-checking, for the automatic verification of formal correctness

  • f UML Multicharts. (Spin,Jack)

Recently we have started a new project aimed at developing an on the fly Model Checker, UMC, for UML communicating state machines. The current alpha-version of the UMC prototype is accessible "online" http://matrix.iei.pi.cnr.it/umc/demo.

Precise ULM and model checking

slide-20
SLIDE 20

CAFÉ - 20 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

A formal operational semantics for a behavioural subset of UML Statechart Diagrams (UMLSDs) extended with mobility a la p-calculs has been defined. A new extension with localities a la Klaim is ongoing. UMC can be used also to verified properties of UML statemachines taking into account locality aspects. An extension of the ACTL logic with assertion predicates has been defined to this purpose.

i.e. We can check properties like: it is true that passengers can eat, only when their plane is flying. AG ( ( EX { eating } true ) -> ASSERT(Plane1.Status=1) )

UML plus Mobility/Locality

slide-21
SLIDE 21

CAFÉ - 21 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

  • From Qualitative to Quantitative Formalisms
  • Integration of Formal Methods towards unifying paradigms
  • Combination of NL analysis techniques and formal methods for the early

validation of requirements

  • Combination Model Checking and Testing Techniques
  • Tools development

Challenging research themes

slide-22
SLIDE 22

CAFÉ - 22 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F

Traditional view

Centralized Toolkit Integration between different tools is given by:

  • Common formats (I.e. FC2) & pipelining

– Problems

  • Interoperability
  • Dynamic reconfiguration
slide-23
SLIDE 23

CAFÉ - 23 June 27, 03

F F F M&&T M&&T M&&T

Formal Methods && Tools Group - ISTI CNR

F F F Web application for mobile systems

mihda = http://jordie.di.unipi.it:8080/mihda/h d hal = http://matrix.iei.pi.cnr.it:8080/hal