Overview
Syllabus
Intro
Acknowledgements
Stainless analyzes Scala programs
Using stainless
require elaborates on inputs, ensuring on outputs
Simpler Example: Adding Two Naturals
IntSet example from Functional Programming
Complete IntSet.scala Example
What the lecture segment proves
Stating algebraic properties in postconditions
Proving algebraic properties with stainless
From the manual proof
The lecture segment ends with
Let's try it in stainless
Why? Is property false?
Sortedness invariant and content function
Automated Verification: How 1 Induction assume and prove specification
Recursive functions inside formulas
Uniform Decision Procedure
Integration with Types
Overview of Activities
Insertion Sort Synthesis
Conclusions
Taught by
Scala Days Conferences