Главная
Study mode:
on
1
Intro
2
Acknowledgements
3
Stainless analyzes Scala programs
4
Using stainless
5
require elaborates on inputs, ensuring on outputs
6
Simpler Example: Adding Two Naturals
7
IntSet example from Functional Programming
8
Complete IntSet.scala Example
9
What the lecture segment proves
10
Stating algebraic properties in postconditions
11
Proving algebraic properties with stainless
12
From the manual proof
13
The lecture segment ends with
14
Let's try it in stainless
15
Why? Is property false?
16
Sortedness invariant and content function
17
Automated Verification: How 1 Induction assume and prove specification
18
Recursive functions inside formulas
19
Uniform Decision Procedure
20
Integration with Types
21
Overview of Activities
22
Insertion Sort Synthesis
23
Conclusions
Description:
Explore tools for code verification, synthesis, and repair developed by Viktor Kuncak's research group at EPFL in this 52-minute keynote from Scala Days Copenhagen 2017. Dive into Stainless, a tool that analyzes Scala programs, and learn how to use 'require' and 'ensuring' statements for input elaboration and output verification. Examine practical examples, including adding two naturals and implementing an IntSet, while understanding how to state and prove algebraic properties using postconditions. Investigate automated verification techniques, such as induction and uniform decision procedures, and their integration with types. Discover the potential of program synthesis through an insertion sort example. Gain insights into cutting-edge research that enhances Scala development practices and promotes more reliable, verifiable code.

Tools for Verified Scala

Scala Days Conferences
Add to list