English
Related papers

Related papers: Certifying C program correctness with respect to C…

200 papers

Hardware-secured remote attestation is essential to establishing trust in the integrity of confidential virtual machines (cVMs), but is difficult to use in practice because verifying attestation evidence requires the use of…

Cryptography and Security · Computer Science 2026-05-01 Parsa Sadri Sinaki , Zainab Ahmad , Wentao Xie , Merlijn Sebrechts , Jimmy Kjällman , Lachlan J. Gunn

Automated software verification is a very active field of research which has made enormous progress both in theoretical and practical aspects. Recently, an important amount of research effort has been put into applying these techniques on…

Programming Languages · Computer Science 2010-11-16 Guido de Caso , Diego Garbervetsky , Daniel Gorín

This paper introduces VeriThoughts, a novel dataset designed for reasoning-based Verilog code generation. We establish a new benchmark framework grounded in formal verification methods to evaluate the quality and correctness of generated…

Programming Languages · Computer Science 2025-11-20 Patrick Yubeaton , Andre Nakkab , Weihua Xiao , Luca Collini , Ramesh Karri , Chinmay Hegde , Siddharth Garg

Quantum computing technology may soon deliver revolutionary improvements in algorithmic performance, but these are only useful if computed answers are correct. While hardware-level decoherence errors have garnered significant attention, a…

Programming Languages · Computer Science 2022-04-15 Yuxiang Peng , Kesha Hietala , Runzhou Tao , Liyi Li , Robert Rand , Michael Hicks , Xiaodi Wu

We describe an embedding of the QWIRE quantum circuit language in the Coq proof assistant. This allows programmers to write quantum circuits using high-level abstractions and to prove properties of those circuits using Coq's theorem proving…

Logic in Computer Science · Computer Science 2018-03-05 Robert Rand , Jennifer Paykin , Steve Zdancewic

We implement extraction of Coq programs to functional languages based on MetaCoq's certified erasure. We extend the MetaCoq erasure output language with typing information and use it as an intermediate representation, which we call…

Programming Languages · Computer Science 2021-08-21 Danil Annenkov , Mikkel Milo , Jakob Botsch Nielsen , Bas Spitters

Using a call-by-value functional language as an example, this article illustrates the use of coinductive definitions and proofs in big-step operational semantics, enabling it to describe diverging evaluations in addition to terminating…

Programming Languages · Computer Science 2008-08-06 Xavier Leroy , Hervé Grall

Chain-of-Thought (CoT) prompting has become the de facto method to elicit reasoning capabilities from large language models (LLMs). However, to mitigate hallucinations in CoT that are notoriously difficult to detect, current methods such as…

Computation and Language · Computer Science 2025-06-06 Chengwu Liu , Ye Yuan , Yichun Yin , Yan Xu , Xin Xu , Zaoyu Chen , Yasheng Wang , Lifeng Shang , Qun Liu , Ming Zhang

Abstract interpreters are complex pieces of software: even if the abstract interpretation theory and companion algorithms are well understood, their implementations are subject to bugs, that might question the soundness of their…

Programming Languages · Computer Science 2021-10-19 Lucas Franceschino , David Pichardie , Jean-Pierre Talpin

The proliferation of decentralized financial (DeFi) systems and smart contracts has underscored the critical need for software correctness. Bugs in such systems can lead to catastrophic financial losses. Formal verification offers a path to…

Logic in Computer Science · Computer Science 2025-10-30 Evgeny Ukhanov

In a recent paper, Belle and Levesque proposed a framework for a type of program called belief programs, a probabilistic extension of GOLOG programs where every action and sensing result could be noisy and every test condition refers to the…

Artificial Intelligence · Computer Science 2022-05-04 Daxin Liu , Gerhard Lakemeyer

The design of Systems on Chips (SoCs) is becoming more and more complex due to technological advancements. Missed bugs can cause drastic failures in safety-critical environments leading to the endangerment of lives. To overcome these…

Hardware Architecture · Computer Science 2024-10-25 Bryan Olmos , Daniel Gerl , Aman Kumar , Djones Lettnin

With experimental quantum computing technologies now in their infancy, the search for efficient means of testing the correctness of these quantum computations is becoming more pressing. An approach to the verification of quantum computation…

Quantum Physics · Physics 2018-04-18 Alexandru Gheorghiu , Matty J. Hoban , Elham Kashefi

We show how support for information-flow security proofs could be added on top of the Verified Software Toolchain (VST). We discuss several attempts to define information flow security in a VST-compatible way, and present a statement of…

Logic in Computer Science · Computer Science 2017-09-18 Samuel Gruetter , Toby Murray

High-performance computing often relies on parallel programming models such as MPI for distributed-memory systems. While powerful, these models are prone to subtle programming errors, leading to development of multiple correctness checking…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-23 Yussur Mustafa Oraji , Christian Bischof

Software verification has recently made enormous progress due to the development of novel verification methods and the speed-up of supporting technologies like SMT solving. To keep software verification tools up to date with these advances,…

Software Engineering · Computer Science 2020-08-12 Jan Haltermann , Heike Wehrheim

The Rust programming language provides a powerful type system that checks linearity and borrowing, allowing code to safely manipulate memory without garbage collection and making Rust ideal for developing low-level, high-assurance systems.…

Logic in Computer Science · Computer Science 2023-03-14 Andrea Lattuada , Travis Hance , Chanhee Cho , Matthias Brun , Isitha Subasinghe , Yi Zhou , Jon Howell , Bryan Parno , Chris Hawblitzel

Quantum computers have advanced rapidly in qubit count and gate fidelity. However, large-scale fault-tolerant quantum computing still relies on quantum error correction code (QECC) to suppress noise. Manually or experimentally verifying the…

Quantum Physics · Physics 2026-02-20 Kean Chen , Yuhao Liu , Wang Fang , Jennifer Paykin , Xin-Chuan Wu , Albert Schmitz , Steve Zdancewic , Gushu Li

Automatic code completion helps improve developers' productivity in their programming tasks. A program contains instructions expressed via code statements, which are considered as the basic units of program execution. In this paper, we…

Software Engineering · Computer Science 2019-11-19 Son Nguyen , Tien N. Nguyen , Yi Li , Shaohua Wang

Nowadays, smart contracts have become increasingly popular and, as with software development in general, testing is the standard method for verifying their correctness. However, smart contracts require a higher level of certainty regarding…

Software Engineering · Computer Science 2023-07-06 Alexandre Mota , Fei Yang , Cristiano Teixeira