-
1
Polite Combination of Algebraic Datatypes
Published 2022“…Abstract Algebraic datatypes, and among them lists and trees, have attracted a lot of interest in automated reasoning and Satisfiability Modulo Theories (SMT). Since its latest stable version, the SMT-LIB standard defines a theory of algebraic datatypes, which is currently supported by several mainstream SMT solvers. …”
Get full text
Article -
2
Trigger Selection Strategies to Stabilize Program Verifiers
Published 2016“…SMT-based program verifiers often suffer from the so-called butterfly effect, in which minor modifications to the program source cause significant instabilities in verification times, which in turn may lead to spurious verification failures and a degraded user experience. …”
Get full text
Get full text
Article -
3
Trigger Selection Strategies to Stabilize Program Verifiers
Published 2021“…SMT-based program verifiers often suffer from the so-called butterfly effect, in which minor modifications to the program source cause significant instabilities in verification times, which in turn may lead to spurious verification failures and a degraded user experience. …”
Get full text
Get full text
Article -
4
SyGuS-Comp 2017: Results and Analysis
Published 2021“…Such a synthesis problem can be formally defined in SyGuS-IF, a language that is built on top of SMT-LIB. The Syntax-Guided Synthesis Competition (SyGuS-Comp) is an effort to facilitate, bring together and accelerate research and development of efficient solvers for SyGuS by providing a platform for evaluating different synthesis techniques on a comprehensive set of benchmarks. …”
Get full text
Article -
5
Stepwise refinement of heap-manipulating code in Chalice
Published 2016“…This paper describes a system with automated tool support for refinement, powered by a state-of-the-art verification engine that uses an SMT solver. Unlike previous refinement systems, users of the presented system interact only via declarations in the programming language. …”
Get full text
Get full text
Article -
6
A fully verified container library
Published 2018“…Keywords: Deductive verification; SMT; Object-oriented software; Containers; AutoProof…”
Get full text
Get full text
Article -
7
SyGuS-Comp 2016: Results and Analysis
Published 2021“…Such a synthesis problem can be formally defined in SyGuS-IF, a language that is built on top of SMT-LIB. The Syntax-Guided Synthesis Competition (SyGuS-Comp) is an effort to facilitate, bring together and accelerate research and development of efficient solvers for SyGuS by providing a platform for evaluating different synthesis techniques on a comprehensive set of benchmarks. …”
Get full text
Article -
8
Alloy*: a general-purpose higher-order relational constraint solver
Published 2021“…Some tasks, however, most notably those involving synthesis, are inherently higher order; these are typically handled by embedding a first-order solver (such as a SAT or SMT solver) in a domain-specific algorithm. Using strategies similar to those used in such algorithms, we show how to extend a first-order solver (in this case Kodkod, a model finder for relational logic used as the engine of the Alloy Analyzer) so that it can handle quantifications over higher-order structures. …”
Get full text
Article -
9
A language for automatically enforcing privacy policies
Published 2012“…We have implemented Jeeves as a Scala library using an SMT solver as a model finder. In this paper we describe the dynamic and static semantics of Jeeves and the properties about policy enforcement that the semantics guarantees. …”
Get full text
Article -
10
TiML: a functional language for practical complexity analysis with invariants
Published 2019“…The programmer provides type annotations, and the typechecker generates verification conditions that are discharged by an SMT solver. Type and index inference are supported to lower annotation burden, and, furthermore, big-O complexity can be inferred from recurrences generated during typechecking by a recurrence solver based on heuristic pattern matching (e.g. using the Master Theorem to handle divide-and-conquer-like recurrences). …”
Get full text
Article -
11
CryptOpt: Verified Compilation with Randomized Program Search for Cryptographic Primitives
Published 2023“…On the formal-verification side, we connect to the Fiat Cryptography framework (which translates functional programs into C-like IR code) and extend it with a new formally verified program-equivalence checker, incorporating a modest subset of known features of SMT solvers and symbolic-execution engines. The overall prototype is quite practical, e.g. producing new fastest-known implementations of finite-field arithmetic for both Curve25519 (part of the TLS standard) and the Bitcoin elliptic curve secp256k1 for the Intel 12��ℎ and 13��ℎ generations.…”
Get full text
Article -
12
-
13
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations
Published 2017“…These transformations formalize the divide-and conquer technique; a visualization interface helps users to interactively guide the process, while an SMT-based back-end verifies each step and takes care of low-level reasoning required for parallelism. …”
Get full text
Get full text
Get full text
Get full text
Get full text
Article