An overview of the Leon verification system: Verification by translation to recursive functions

R Blanc, V Kuncak, E Kneuss, P Suter - … of the 4th Workshop on Scala, 2013 - dl.acm.org
We present the Leon verification system for a subset of the Scala programming language.
Along with several functional features of Scala, Leon supports imperative constructs such as …

Complete functional synthesis

V Kuncak, M Mayer, R Piskac, P Suter - ACM Sigplan Notices, 2010 - dl.acm.org
Synthesis of program fragments from specifications can make programs easier to write and
easier to reason about. To integrate synthesis into programming languages, synthesis …

Synthesis modulo recursive functions

E Kneuss, I Kuraj, V Kuncak, P Suter - Proceedings of the 2013 ACM …, 2013 - dl.acm.org
We describe techniques for synthesis and verification of recursive functional programs over
unbounded domains. Our techniques build on top of an algorithm for satisfiability modulo …

Refinement reflection: complete verification with SMT

N Vazou, A Tondwalkar, V Choudhury… - Proceedings of the …, 2017 - dl.acm.org
We introduce Refinement Reflection, a new framework for building SMT-based deductive
verifiers. The key idea is to reflect the code implementing a user-defined function into the …

Satisfiability modulo recursive programs

P Suter, AS Köksal, V Kuncak - International Static Analysis Symposium, 2011 - Springer
We present a semi-decision procedure for checking satisfiability of expressive correctness
properties of recursive first-order functional programs. In our approach, both properties and …

Natural proofs for structure, data, and separation

X Qiu, P Garg, A Ştefănescu, P Madhusudan - ACM SIGPLAN Notices, 2013 - dl.acm.org
We propose natural proofs for reasoning with programs that manipulate data-structures
against specifications that describe the structure of the heap, the data stored within it, and …

Complete first-order reasoning for properties of functional programs

A Murali, L Peña, R Jhala, P Madhusudan - Proceedings of the ACM on …, 2023 - dl.acm.org
Several practical tools for automatically verifying functional programs (eg, Liquid Haskell
and Leon for Scala programs) rely on a heuristic based on unrolling recursive function …

Natural proofs for data structure manipulation in C using separation logic

E Pek, X Qiu, P Madhusudan - ACM SIGPLAN Notices, 2014 - dl.acm.org
The natural proof technique for heap verification developed by Qiu et al.[32] provides a
platform for powerful sound reasoning for specifications written in a dialect of separation …

Beyond the elementary representations of program invariants over algebraic data types

Y Kostyukov, D Mordvinov, G Fedyukovich - Proceedings of the 42nd …, 2021 - dl.acm.org
First-order logic is a natural way of expressing properties of computation. It is traditionally
used in various program logics for expressing the correctness properties and certificates …

Constraints as control

AS Köksal, V Kuncak, P Suter - ACM SIGPLAN Notices, 2012 - dl.acm.org
We present an extension of Scala that supports constraint programming over bounded and
unbounded domains. The resulting language, Kaplan, provides the benefits of constraint …