Skip to content

Latest commit

 

History

History
35 lines (31 loc) · 5.14 KB

README.md

File metadata and controls

35 lines (31 loc) · 5.14 KB

Test Suite for Magic Wand Snap Functions

This folder contains Viper test files that I used when working on MagicWandSnapFunctions for the Silicon project.

Overview

Name Description Expected Result
basic-bool.vpr Boolean Magic Wand with trivial LHS
basic-int.vpr Integer Magic Wand with trivial LHS
basic-lhs-eq-rhs.vpr Integer Magic Wand with LHS = RHS
basic-lhs-lt-rhs.vpr Integer Magic Wand with LHS < RHS
basic-lhs-gt-rhs.vpr Integer Magic Wand with LHS > RHS
applying-twice-bool.vpr Applying the magic wand multiple times. Original version leaks information into the outer state ×
assign-applying-bool.vpr Assigning result of applying expression to the same field using booleans ×
assign-applying-int.vpr Assigning result of applying expression to the same field using integers ×
inhaling-magic-wand.vpr Inhaling a magic wand
predicates-in-magic-wands.vpr Magic wand with predicates
example-list.vpr Iterate over a List
applying-twice-quantified-wand.vpr Applying a quantified magic wand multiple times.
applying-twice-quantified-lhs.vpr Applying a magic wand multiple times with a quantified expression on the LHS.
applying-twice-qp-fields.vpr Test from QPFields.vpr adapted to test some unsound behavior.
applying-twice-qp-predicates.vpr Test from QPPredicates.vpr adapted to test some unsound behavior.
quantified-magic-wands.vpr Tests with quantified magic wands.
two-fields.vpr Magic wand with quantifier over two fields.

Other interesting test cases in the Silver repository during the development of MagicWandSnapFunctions were: