YoVDO

Tools for Verified Scala

Offered By: Scala Days Conferences via YouTube

Tags

Scala Days Courses Automated testing Courses Algebraic Properties Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
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.

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

Related Courses

Linear Algebra
Indian Institute of Science Bangalore via Swayam
Differential Forms
YouTube
Complex Analysis
Jeremy Klassen via YouTube
AP Calculus AB and BC - Unit 1 Review - Limits and Continuity
Krista King via YouTube
Reciprocals, Powers of 10, and Euler's Totient Function II - Data Structures Math Foundations
Insights into Mathematics via YouTube