Type-directed Bounding of Collections in Reactive Programs
Our aim is to statically verify that in a given reactive program, the length of collection variables does not grow beyond a given bound. We propose a scalable type-based technique that checks that each collection variable has a given refinement type that specifies constraints about its length. A novel feature of our refinement types is that the refinements can refer to AST counters that track how many times an AST node has been executed. This feature enables type refinements to track limited flow-sensitive information. We generate verification conditions that ensure that the AST counters are used consistently, and that the types imply the given bound. The verification conditions are discharged by an off-the-shelf SMT solver. Experimental results demonstrate that our technique is scalable, and effective at verifying reactive programs with respect to requirements on length of collections.
Tue 15 Jan Times are displayed in time zone: Greenwich Mean Time : Belfast change
14:00 - 15:30: Software VerificationVMCAI at Sala III Chair(s): Grigory FedyukovichPrinceton University | |||
14:00 - 14:30 Talk | Type-directed Bounding of Collections in Reactive Programs VMCAI Tianhan LuUniversity of Colorado Boulder, Pavol CernyUniversity of Colorado Boulder, Bor-Yuh Evan ChangUniversity of Colorado Boulder, Ashutosh Trivedi | ||
14:30 - 15:00 Talk | Exploiting Pointer Analysis in Memory Models for Deductive Verification VMCAI Quentin Bouillaguet, François BobotCEA, Mihaela SighireanuIRIF, University Paris Diderot and CNRS, France, Boris YakobowskiCEA - LIST File Attached | ||
15:00 - 15:30 Talk | Small Faults Grow Up - Verification of Error Masking Robustness in Arithmetically Encoded Programs VMCAI Anja KarlInstitute of Applied Information Processing and Communications, Graz University of Technology, Robert Schilling, Roderick BloemInstitute of Software Technology, Graz University of Technology , Stefan Mangard |