English
Related papers

Related papers: Verifying Eiffel Programs with Boogie

200 papers

Exploration algorithms for explicit-state transition systems are a core back-end technology in program verification. They can be applied to programs by generating the transition system on the fly, avoiding an expensive up-front translation.…

Software Engineering · Computer Science 2017-06-13 Peizun Liu , Thomas Wahl

Verification is one of the central tasks in circuit and system design. While simulation and emulation are widely used, complete correctness can only be ensured based on formal proof techniques. But these approaches often have very high run…

Logic in Computer Science · Computer Science 2025-05-30 Rolf Drechsler

Automatic speech verification (ASV) is the technology to determine the identity of a person based on their voice. While being convenient for identity verification, we should aim for the highest system security standard given that it is the…

Machine Learning · Computer Science 2020-12-16 Shentong Mo , Haofan Wang , Pinxu Ren , Ta-Chung Chi

Software verification is a tedious process that involves the analysis of multiple failed verification attempts, and adjustments of the program or specification. This is especially the case for complex requirements, e.g., regarding security…

Verification is becoming central to both reinforcement-learning-based training and inference-time control of large language models (LLMs). Yet current verifiers face a fundamental trade-off: LLM-based verifiers are expressive but hard to…

Computation and Language · Computer Science 2026-04-28 Pouya Pezeshkpour , Estevam Hruschka

Highly automated theorem provers like Dafny allow users to prove simple properties with little effort, making it easy to quickly sketch proofs. The drawback is that such provers leave users with little control about the proof search,…

Programming Languages · Computer Science 2024-01-30 Son Ho , Clément Pit-Claudel

The rapid pace of large-scale software development places increasing demands on traditional testing methodologies, often leading to bottlenecks in efficiency, accuracy, and coverage. We propose a novel perspective on software testing by…

Software Engineering · Computer Science 2025-04-08 Yuchen Wang , Shangxin Guo , Chee Wei Tan

Hoare-style verification provides a principled foundation for reasoning about the correctness of quantum programs, but existing approaches do not allow fully automatic verification. While automata-based verification scales well when…

Logic in Computer Science · Computer Science 2026-05-08 Wei-Lun Tsai , Yu-Fang Chen , Ondřej Lengál

How to apply automated verification technology such as model checking and static program analysis to millions of lines of embedded C/C++ code? How to package this technology in a way that it can be used by software developers and engineers,…

Software Engineering · Computer Science 2013-01-03 Ralf Huuck

In order to help students learn how to write mathematical proofs, we adapt the Coq proof assistant into an educational tool we call Waterproof. Like with other interactive theorem provers, students write out their proofs inside the software…

The software approach to developing Digital Signal Processing (DSP) applications brings some great features such as flexibility, re-usability of resources and easy upgrading of applications. However, it requires long and tedious tests and…

Logic in Computer Science · Computer Science 2007-05-23 Hahnsang Kim , Theirry Turletti , Amar Bouali

For all the successes in verifying low-level, efficient, security-critical code, little has been said or studied about the structure, architecture and engineering of such large-scale proof developments. We present the design, implementation…

Programming Languages · Computer Science 2023-07-10 Son Ho , Aymeric Fromherz , Jonathan Protzenko

The use of autonomous vehicles in real-world applications is often precluded by the difficulty of providing safety guarantees for their complex controllers. The simulation-based testing of these controllers cannot deliver sufficient safety…

Software Engineering · Computer Science 2025-03-21 Simon Foster , Mario Gleirscher , Radu Calinescu

Fuzzing -- testing programs with random inputs -- has become the prime technique to detect bugs and vulnerabilities in programs. To generate inputs that cover new functionality, fuzzers require execution feedback from the program -- for…

Software Engineering · Computer Science 2020-12-29 Rahul Gopinath , Bachir Bendrissou , Björn Mathis , Andreas Zeller

The technology of formal software verification has made spectacular advances, but how much does it actually benefit the development of practical software? Considerable disagreement remains about the practicality of building systems with…

Software Engineering · Computer Science 2026-01-21 Li Huang , Sophie Ebersold , Alexander Kogtenkov , Bertrand Meyer , Yinling Liu

Formally verified compilers and formally verified static analyzers are a solution to the problem that certain industries face when they have to demonstrate to authorities that the object code they run truly corresponds to its source code…

Logic in Computer Science · Computer Science 2024-07-12 David Monniaux

We show that interactive protocols between a prover and a verifier, a well-known tool of complexity theory, can be used in practice to certify the correctness of automated reasoning tools. Theoretically, interactive protocols exist for all…

Logic in Computer Science · Computer Science 2023-09-07 Eszter Couillard , Philipp Czerner , Javier Esparza , Rupak Majumdar

Verification of numerical accuracy properties in modern software remains an important and challenging task. This paper describes an original framework combining different solutions for numerical accuracy. First, we extend an existing…

Software Engineering · Computer Science 2019-11-26 Maxime Jacquemin , Fonenantsoa Maurica , Nikolai Kosmatov , Julien Signoles , Franck Védrine

Software testing framework can be stated as the process of verifying and validating that a computer program/application works as expected and meets the requirements of the user. Usually testing can be done manually or using tools. Manual…

Software Engineering · Computer Science 2013-07-15 K. Karnavel , V. Divya , Gnanakeerthika , P. Karthika

Automated code generation with large language models has gained significant traction, but there remains no guarantee on the correctness of generated code. We aim to use formal verification to provide mathematical guarantees that the…

Machine Learning · Computer Science 2024-12-10 Pranjal Aggarwal , Bryan Parno , Sean Welleck