More Abstrac,on Laurent Voisin, Systerel 2-6 July 2012, - - PowerPoint PPT Presentation

more abstrac on
SMART_READER_LITE
LIVE PREVIEW

More Abstrac,on Laurent Voisin, Systerel 2-6 July 2012, - - PowerPoint PPT Presentation

More Abstrac,on Laurent Voisin, Systerel 2-6 July 2012, Dagstuhl AI Meets Formal Software Development 1 About Systerel So6ware development Embedded Safety-cri,cal


slide-1
SLIDE 1

More ¡Abstrac,on ¡

Laurent ¡Voisin, ¡Systerel ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 1

slide-2
SLIDE 2

About ¡Systerel ¡

  • So6ware ¡development ¡

– Embedded ¡ – Safety-­‑cri,cal ¡ – Real-­‑Time ¡

  • System ¡design, ¡safety ¡evalua,on, ¡tools ¡
  • Formal ¡Methods: ¡B, ¡Event-­‑B, ¡Tecla, ¡Scade,… ¡
  • Data ¡valida,on ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 2

slide-3
SLIDE 3

Stepwise ¡Refinement ¡

  • Concepts ¡are ¡introduced ¡gradually ¡
  • Complexity ¡is ¡sliced ¡down ¡in ¡small ¡pieces ¡
  • Makes ¡a ¡model ¡easier ¡to ¡grasp ¡
  • And ¡easier ¡to ¡prove ¡

Instead ¡of ¡a ¡gigan,c ¡proof ¡ several ¡small ¡proofs ¡ that ¡can ¡be ¡automated ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 3

slide-4
SLIDE 4

But ¡refinement ¡is ¡not ¡enough ¡

When ¡you ¡want ¡to ¡work ¡with ¡large ¡models, ¡ you ¡need ¡more ¡than ¡refinement ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 4

slide-5
SLIDE 5

A ¡modelling ¡example ¡

  • Interlocking ¡system ¡

– First ¡itera,on ¡in ¡2007 ¡ – Second ¡itera,on ¡in ¡2010 ¡ – Third ¡itera,on ¡in ¡2012 ¡

  • What ¡we ¡learned… ¡

– Extract ¡complicated ¡data-­‑structures ¡ – together ¡with ¡rules ¡for ¡reasoning ¡on ¡them ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 5

slide-6
SLIDE 6

The ¡language ¡is ¡important ¡

  • Level ¡of ¡discourse ¡
  • Having ¡the ¡right ¡tool ¡(i.e., ¡language) ¡
  • Mathema,cians ¡have ¡known ¡this ¡for ¡centuries ¡
  • Hence ¡an ¡extensible ¡mathema,cal ¡language ¡
  • AI ¡could ¡help ¡detec,ng ¡that ¡a ¡model ¡is ¡not ¡at ¡

the ¡right ¡level ¡(esp. ¡for ¡beginners) ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 6

slide-7
SLIDE 7

Don’t ¡Repeat ¡Yourself ¡

  • Already ¡detected ¡in ¡classical ¡B ¡
  • Modelling ¡paXerns ¡
  • Solu,on: ¡Generate ¡models ¡+ ¡proof ¡tac,cs ¡
  • In ¡event-­‑B, ¡generic ¡instan,a,on ¡of ¡paXerns ¡
  • Proved ¡once, ¡used ¡several ¡,mes ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 7

slide-8
SLIDE 8

Link ¡with ¡AI ¡

  • Refinement ¡plan: ¡
  • From ¡a ¡failed ¡invariant ¡proof, ¡
  • Based ¡on ¡paXern ¡recogni,on ¡
  • Suggest ¡a ¡correc,on ¡to ¡the ¡model ¡
  • Suggest ¡a ¡paXern ¡instan,a,on ¡instead ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 8

slide-9
SLIDE 9

Conclusion ¡

  • Theories ¡+ ¡PaXerns ¡
  • higher-­‑level ¡building ¡blocks ¡
  • like ¡a ¡programming ¡language ¡library ¡
  • AI ¡could ¡help ¡finding ¡when ¡a ¡library ¡should ¡be ¡

used ¡instead ¡of ¡inlined ¡in ¡a ¡model ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 9

slide-10
SLIDE 10

Ques,ons ¡? ¡

2-6 July 2012, Dagstuhl AI Meets Formal Software Development 10