DeepAI AI Chat
Log In Sign Up

Reductions for Automated Hypersafety Verification

05/22/2019
by   Azadeh Farzan, et al.
0

We propose an automated verification technique for hypersafety properties, which express sets of valid interrelations between multiple finite runs of a program. The key observation is that constructing a proof for a small representative set of the runs of the product program (i.e. the product of the several copies of the program by itself), called a reduction, is sufficient to formally prove the hypersafety property about the program. We propose an algorithm based on a counterexample-guided refinement loop that simultaneously searches for a reduction and a proof of the correctness for the reduction. We demonstrate that our tool Weaver is very effective in verifying a diverse array of hypersafety properties for a diverse class of input programs.

READ FULL TEXT

page 1

page 2

page 3

page 4

10/31/2019

Reductions for Safety Proofs (Extended Version)

Program reductions are used widely to simplify reasoning about the corre...
06/02/2021

Putting the Squeeze on Array Programs: Loop Verification via Inductive Rank Reduction

Automatic verification of array manipulating programs is a challenging p...
01/25/2020

Verification of a Generative Separation Kernel

We present a formal verification of the functional correctness of the Mu...
11/05/2021

LTL under reductions with weaker conditions than stutter-invariance

Verification of properties expressed as-regular languages such as LTL ca...
08/21/2022

A Failed Proof Can Yield a Useful Test

A successful automated program proof is, in software verification, the u...
07/09/2019

Understanding Counterexamples for Relational Properties with DIbugger

Software verification is a tedious process that involves the analysis of...
02/20/2020

RustHorn: CHC-based Verification for Rust Programs (full version)

Reduction to the satisfiability problem for constrained Horn clauses (CH...