A Case Study in Automated A Case Study in Automated Verification - - PowerPoint PPT Presentation

a case study in automated a case study in automated
SMART_READER_LITE
LIVE PREVIEW

A Case Study in Automated A Case Study in Automated Verification - - PowerPoint PPT Presentation

A Case Study in Automated A Case Study in Automated Verification Verification Jason Kirschenbaum Kirschenbaum, , Jason Heather Harton Harton and and Murali Murali Heather Sitaraman Sitaraman Introduction Introduction Goal is to


slide-1
SLIDE 1

A Case Study in Automated A Case Study in Automated Verification Verification

Jason Jason Kirschenbaum Kirschenbaum, , Heather Heather Harton Harton and and Murali Murali Sitaraman Sitaraman

slide-2
SLIDE 2

Introduction Introduction

Goal is to investigate automatic verification Goal is to investigate automatic verification

  • f extensions to software components
  • f extensions to software components

– – Including the development process Including the development process

Selection Sort Example Selection Sort Example

– – Simple Simple – – Theory Development Theory Development – – Specifications Specifications

slide-3
SLIDE 3

Focus of this Work Focus of this Work

Full Behavioral Verification Full Behavioral Verification Language with Clean Semantics Language with Clean Semantics Modular Verification Modular Verification Generic Specification and Implementation Generic Specification and Implementation

slide-4
SLIDE 4

Resolve Language Resolve Language

Design by Contract Design by Contract Model Based Model Based Specifications Specifications Modular Reasoning Modular Reasoning Layered Layered Implementations Implementations Parameterized Code Parameterized Code Value Semantics Value Semantics Alias Avoidance Alias Avoidance Total Correctness Total Correctness Code Annotation Code Annotation Constructs Constructs

slide-5
SLIDE 5

Vision of Development Process Vision of Development Process

slide-6
SLIDE 6

Isabelle Isabelle

Higher Order Higher Order Large Library of Verified Theories Large Library of Verified Theories Both Automated and User Both Automated and User-

  • guided proof

guided proof methods methods

slide-7
SLIDE 7

Selection Sort Specification Selection Sort Specification

slide-8
SLIDE 8

Challenges Challenges

Human Errors Human Errors

– – Specification bugs Specification bugs

Tool Weaknesses Tool Weaknesses

– – Lemmas involving permutation Lemmas involving permutation – – Proof is too long for Isabelle to find Proof is too long for Isabelle to find

slide-9
SLIDE 9

Challenge 1: Human Errors Challenge 1: Human Errors

slide-10
SLIDE 10

Corrected Implementation Corrected Implementation

slide-11
SLIDE 11

Challenge 2: Automation Challenge 2: Automation

Verification Condition Proofs Issues Verification Condition Proofs Issues

– – Permutation Development Permutation Development – – Length of Proof Length of Proof

slide-12
SLIDE 12

First Type of Problem VC First Type of Problem VC

slide-13
SLIDE 13

Second Type of Problem VC Second Type of Problem VC

slide-14
SLIDE 14

Proposed Theory Development Proposed Theory Development

slide-15
SLIDE 15

Updated Implementation Updated Implementation

slide-16
SLIDE 16

Questions? Questions?