IMDEA Software

Iniciativa IMDEA

Inicio > Eventos > Software Seminar Series > 2020 > REST: Rewriting for SMT Verification with User-Defined Functions
Esta página aún no ha sido traducida. A continuación se muestra la página en inglés.

Zachary Grannan

martes 21 de julio de 2020

11:00am Zoom7 - https://zoom.us/j/7911012202 (pass: s3)

Zachary Grannan, Research Intern, IMDEA Software Institute

REST: Rewriting for SMT Verification with User-Defined Functions

Abstract:

We introduce REST, a rewrite technique for SMT-based verifiers that supports user-defined terminating functions. Our technique builds upon proof-by-logical evaluation (PLE) that decidably encodes user-defined functions as SMT equalities. REST extends PLE to automatically instantiate provably correct rewrite rules. It uses size-change termination to ensure that rewriting does not diverge, preserving predictable verification.

We implement REST in Liquid Haskell and use it to automate proof generation. The automation provided by REST sets the ground for further proof tactic development: we used metaprogramming to implement a structural induction tactic. Our evaluation of REST and the induction tactic combined concludes that

  1. they are not subsumed by existing rewriting techniques,
  2. they can automate existing proof benchmarks, and
  3. having the expected verification slowdown cost, they greatly ease Liquid Haskell proof development.