Towards ai-assisted synthesis of verified dafny methods

MRH Misu, CV Lopes, I Ma, J Noble - Proceedings of the ACM on …, 2024 - dl.acm.org
Large language models show great promise in many domains, including programming. A
promise is easy to make but hard to keep, and language models often fail to keep their …

Interrogation Testing of Program Analyzers for Soundness and Precision Issues

D Kaindlstorfer, A Isychev, V Wüstholz… - Proceedings of the 39th …, 2024 - dl.acm.org
Program analyzers are critical in safeguarding software reliability. However, due to their
inherent complexity, they are likely to contain bugs themselves, and the question of how to …

Constraint-Based Test Oracles for Program Analyzers

M Fleischmann, D Kaindlstorfer, A Isychev… - Proceedings of the 39th …, 2024 - dl.acm.org
Program analyzers implement complex algorithms and, as any software, can contain bugs.
Bugs in their implementation may lead to analyzers being imprecise and failing to verify safe …

Generating Conforming Programs with Xsmith

W Hatch, P Darragh, S Porncharoenwase… - Proceedings of the …, 2023 - dl.acm.org
Fuzz testing is an effective tool for finding bugs in software, including programming
language compilers and interpreters. Advanced fuzz testers can find deep semantic bugs in …

{IronSpec}: Increasing the Reliability of Formal Specifications

E Goldweber, W Yu, SAV Ghahani… - 18th USENIX Symposium …, 2024 - usenix.org
The guarantees of formally verified systems are only as strong as their trusted specifications
(specs). As observed by previous studies, bugs in formal specs invalidate the assurances …

SMT2Test: From SMT Formulas to Effective Test Cases

C Zhang, Z Su - Proceedings of the ACM on Programming Languages, 2024 - dl.acm.org
One of the primary challenges in software testing is generating high-quality test inputs and
obtaining corresponding test oracles. This paper introduces a novel methodology to mitigate …

A toolkit for automated testing of Dafny

A Fedchin, T Dean, JS Foster, E Mercer… - NASA Formal Methods …, 2023 - Springer
Dafny is a verification-ready programming language that is executed via compilation to C#
and other mainstream languages. We introduce a toolkit for automated testing of Dafny …

Fuzzing Processing Pipelines for Zero-Knowledge Circuits

C Hochrainer, A Isychev, V Wüstholz… - arXiv preprint arXiv …, 2024 - arxiv.org
Zero-knowledge (ZK) protocols have recently found numerous practical applications, such
as in authentication, online-voting, and blockchain systems. These protocols are powered by …

Randomised Testing of the Compiler for a Verification-Aware Programming Language

AF Donaldson, D Sheth, JB Tristan… - 2024 IEEE Conference …, 2024 - ieeexplore.ieee.org
We present the design and implementation of two new tools for randomised testing of the
compiler of the Dafny programming language. The Dafny language and tool-chain supports …

Identifying Overly Restrictive Matching Patterns in SMT-based Program Verifiers (extended version)

A Bugariu, A Ter-Gabrielyan, P Müller - Formal Aspects of Computing, 2023 - dl.acm.org
Universal quantifiers occur frequently in proof obligations produced by program verifiers, for
instance, to axiomatize uninterpreted functions and to statically express properties of arrays …