Formal Methods - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Formal Methods

Description:

Is the mathematics of software engineering. Modeling, calculation. 12. Formal Methods ... pde but discrete math calculation. Logic and deduction. All behaviours. ... – PowerPoint PPT presentation

Number of Views:114
Avg rating:3.0/5.0
Slides: 28
Provided by: josba
Category:

less

Transcript and Presenter's Notes

Title: Formal Methods


1
Formal Methods
  • Jos Baeten, TU/e

2
Formal methods
  • Is the mathematics of software engineering.
  • Modeling, calculation.

3
Formal Methods
  • Research in Formal Methods is a systematic and
    scientific study of issues in computer science,
    based on solid mathematical principles.
  • Formal Methods apply to systems and constructions
    used in computer science.
  • These constructions are described exactly in a
    formal syntax and are supplied with a formal
    semantics whenever appropriate.

4
Why Formal Methods?
  • Formal Methods increase understanding of systems,
    increase clarity of description and help solve
    problems and remove errors. Use of Formal Methods
    increases dependability and usability of
    constructions and systems in computer science.

5
Why Formal Methods?
  • Software ( hardware) Engineering
  • is craft, not science.
  • Complex
  • No margin of error
  • Local action has global consequences
  • Discrete
  • (no intra-, extrapolation, some statistics
    possible)

6
Process
  • Quality control

Product
Quality assurance safety liveness
7
Formal Methods
  • Specification - descriptive
  • Verification - analysis

8
Specification
  • Communication between designers.
  • Control and data.
  • What over how.
  • Reactive, parallel, distributed systems.

9
Verification
  • Not pde but discrete math calculation.
  • Logic and deduction.
  • All behaviours. Parameters.
  • Hierarchy of abstraction.
  • Model needs to be validated against reality.

10
Issues and choices
  • Selection
  • Level of formality 1. Math. argument
  • 2. Formal spec. 3. Verif. system
  • Part of system, selected components
  • Selected properties
  • Part of lifecycle
  • Level of abstraction

11
Specification varieties
  • Model-oriented operational. Z.
  • Property-oriented logical. CTL/LTL.
  • Concurrency. Process algebra.

12
Verification varieties.
  • Consistency analysis and type checking
  • Validation animation, challenges.
  • Predicting behaviour and verifying refinement
  • State space exploration, model checking, language
    inclusion
  • Theorem proving, proof checking

13
Certification of critical systems
  • Can never achieve failure rate of 10-9.

14
Acceptance tests
User req. def.
System tests
Sw. req. def.
Arch. design
Integration tests
Detailed design
Unit tests
Docs
Code
Verif.
15
Alexander theory
EREA, PVS
ADL
RPA
SDL, MSC, Spin, PVS, Z
Spin, PVS, TTCN, TorX
Docs
Invariants, PVS
Verif.
16
Advantages of FM
  • Precision engineering
  • Complexity engineering
  • Correctness engineering
  • Automation engineering

17
History
  • Noam Chomsky models language
  • John Backus defines Fortran syntax
  • Haskel Curry and Robert Feys describe
    propositions-as-types analogy
  • 1960 Peter Naur applies BNF to ALGOL60
  • 1968 Adriaan van Wijngaarden defines ALGOL68,
    experiments with ?, 2 l. grammar
  • 1968 Donald Knuth invents attribute grammars

18
History
  • 1968 Dana Scott denotational sem. for ?
  • 1969 Tony Hoare axiomatic semantics
  • 1970 N.G. de Bruijn Automath
  • 1972 IBM Vienna FM for PL/I design
  • 1974 Goguen Thatcher init. alg. sem. data types
  • 1977 Joseph Stoy book denotational sem.
  • 1978 Dines Bjørner, Cliff Jones VDM
  • 1979 Philips Brussels CHILL design

19
History
  • 1980 Robin Milner CCS
  • 1980 Jean-Raymond Abrial Z
  • 1980-1990 Gerard Holzmann SPIN
  • 1983 Jan Bergstra ACP
  • 1985 Ed Brinksma LOTOS
  • 1985-1995 ESPRIT CIP, OBJ, PLUSS, ASL, Larch,
    SDL, ExSpect, ADJ, ASF, SDF, PSF, PVS, COLD,
    SPRINT, ERAE, CLEAR,

20
History
  • 1993 VDM Europe becomes FME
  • 1997 Intel establishes FM group after Pentium
  • 1999 FM World
  • Commercial firms offering FM (Verum, FDR)
  • FMICS, IFM

21
Ingredients
  • Syntax States
  • Logic Transitions
  • Proof Execution
  • Data types Communication
  • Modularisation Abstraction
  • Type system Timing
  • Object orientation Hybrid systems

22
Semantics
  • Denotational
  • De Bakker, Rozenberg
  • Operational
  • Axiomatic - assertional
  • Kuiper, Jonkers, De Boer

23
Varieties
  • Logic thm proving PVS, COQ
  • Hooman, Poll, Barendregt, Hesselink
  • Temporele logica CTL, LTL Kuiper
  • Game theory v.d. Herik, De Bruin
  • Categories, co-algebras Rutten, Jacobs
  • Multi-agent systems Renardel

24
Varieties
  • Equational ?-calculus Barendregt
  • term rewriting Klop, v. Oostrom, Zantema
  • type theory Barendregt, Swierstra
  • ASFSDF Klint
  • Program derivation Meertens
  • Process algebra Bergstra, Fokkink, Baeten,
    Groote, Brinksma

25
Varieties
  • Operational sequential Z, VDM, Larch
  • SOS Fokkink, Reniers
  • I/O automata Vaandrager
  • Petri nets Van Hee, Van der Aalst
  • Model checking Larsen Katoen
  • Graphs Rozenberg Rensink
  • ? Rooda
  • TorX Tretmans

26
Varieties
  • Visual MSC, Petri nets

27
Applications
  • Software Engineering,
  • in particular components, coordination
  • Embedded Systems (hybrid systems)
  • Business Processes
  • Biological Processes
  • Security
  • Web services grid computing
  • Agents, games, quantum relativistic comput.
Write a Comment
User Comments (0)
About PowerShow.com