– The design of systems and software can be made more reliable through the use of formal methods. The course is a pragmatic approach to the formal design from case studies and proven techniques: proof, refinement and model checking.
Acquired skills :
– Capacity of abstraction of system’s behaviors (hardware and software) for verification of functional and / or dysfunctional properties.
– Capacity of abstraction and logical reasoning about data, instructions and sequences of instructions in order to prove software correctness.
Teaching : 48h Lecture
Examination : practical work + final exam
Lecturer : Alain Griffault and Hugo Gimbert
The site https://en.wikipedia.org/wiki/Formal_methods is a good introduction to formal design. It gives also a lot of good references.