English
Related papers

Related papers: OSVAuto: automatic proofs about functional specifi…

200 papers

We exploit (co)inductive specifications and proofs to approach the evaluation of low-level programs for the Unlimited Register Machine (URM) within the Coq system, a proof assistant based on the Calculus of (Co)Inductive Constructions type…

Logic in Computer Science · Computer Science 2011-11-15 Alberto Ciaffaglione

Today's programmers face a false choice between creating software that is extensible and software that is correct. Specifically, dynamic languages permit software that is richly extensible (via dynamic code loading, dynamic object…

Programming Languages · Computer Science 2016-08-23 Matthew A. Hammer , Bor-Yuh Evan Chang , David Van Horn

We study the problem of completely automatically verifying uninterpreted programs---programs that work over arbitrary data models that provide an interpretation for the constants, functions and relations the program uses. The verification…

Programming Languages · Computer Science 2020-08-27 Umang Mathur , P. Madhusudan , Mahesh Viswanathan

The importance of preventing microarchitectural timing side channels in security-critical applications has surged in recent years. Constant-time programming has emerged as a best-practice technique for preventing the leakage of secret…

Cryptography and Security · Computer Science 2024-03-12 Lucas Deutschmann , Johannes Mueller , Mohammad Rahmani Fadiheh , Dominik Stoffel , Wolfgang Kunz

We present a simple framework for specifying and proving facts about the input/output behavior of ELF binary files on the x86-64 architecture. A strong emphasis has been placed on simplicity at all levels: the specification says only what…

Logic in Computer Science · Computer Science 2019-07-03 Mario Carneiro

We discuss the topic of unsatisfiability proofs in SMT, particularly with reference to quantifier free non-linear real arithmetic. We outline how the methods here do not admit trivial proofs and how past formalisation attempts are not…

Logic in Computer Science · Computer Science 2021-08-12 Erika Abraham , James H. Davenport , Matthew England , Gereon Kremer

Quantum error correction (QEC) is fundamental for suppressing noise in quantum hardware and enabling fault-tolerant quantum computation. In this paper, we propose an efficient verification framework for QEC programs. We define an assertion…

Programming Languages · Computer Science 2025-10-30 Qifan Huang , Li Zhou , Wang Fang , Mengyu Zhao , Mingsheng Ying

Proofs in proof assistants like Rocq can be brittle, breaking easily in response to changes. To address this, recent work introduced an algorithm and tool in Rocq to automatically repair broken proofs in response to changes that correspond…

Programming Languages · Computer Science 2025-08-26 Cosmo Viola , Max Fan , Talia Ringer

We propose a novel paradigm for automatic fact-checking that leverages frame semantics to enhance the structured understanding of claims and guide the process of fact-checking them. To support this, we introduce a pilot dataset of…

Computation and Language · Computer Science 2025-08-21 Jacob Devasier , Rishabh Mediratta , Akshith Putta , Chengkai Li

LLMs can generate SystemVerilog assertions (SVAs) from natural language specs, but single-pass outputs often lack functional coverage due to limited IC design understanding. We propose CoverAssert, an iterative framework that clusters…

Hardware Architecture · Computer Science 2026-04-14 Yonghao Wang , Yang Yin , Hongqin Lyu , Jiaxin Zhou , Zhiteng Chao , Mingyu Shi , Wenchao Ding , Yunlin Du , Jing Ye , Tiancheng Wang , Huawei Li

Deductive verification has become a mature paradigm for the verification of industrial software. Applying deductive verification, however, requires that every function in the code base is annotated with a function contract specifying its…

Logic in Computer Science · Computer Science 2025-01-22 Jesper Amilon , Dilian Gurov , Christian Lidström , Mattias Nyberg , Gustav Ung , Ola Wingbrant

Support Vector Machines (SVMs) are still one of the most popular and precise classifiers. The Radial Basis Function (RBF) kernel has been used in SVMs to separate among classes with considerable success. However, there is an intrinsic…

Machine Learning · Computer Science 2020-07-17 Karl Thurnhofer-Hemsi , Ezequiel López-Rubio , Miguel A. Molina-Cabello , Kayvan Najarian

There is an ongoing effort to provide programming abstractions that ease the burden of exploiting multicore hardware. Many programming abstractions (e.g., concurrent objects, transactional memory, etc.) simplify matters, but still involve…

Programming Languages · Computer Science 2022-05-02 Adam Chen , Parisa Fathololumi , Eric Koskinen , Jared Pincus

Network verification (NWV), broadly defined as the verification of properties of distributed protocols used in network systems, cannot be efficiently solved on classical hardware via brute force. Prior work has developed a variety of…

Recent verification tools aim to make formal verification more accessible to software engineers by automating most of the verification process. However, annotating conventional programs with the formal specification and verification…

Software Engineering · Computer Science 2026-01-21 João Pascoal Faria , Emanuel Trigo , Vinicius Honorato , Rui Abreu

Autonomous systems -- such as self-driving cars, autonomous drones, and automated trains -- must come with strong safety guarantees. Over the past decade, techniques based on formal methods have enjoyed some success in providing strong…

Software Engineering · Computer Science 2020-06-17 Nathan Fulton , Nathan Hunt , Nghia Hoang , Subhro Das

Using Isabelle/HOL, we verify a union-find data structure with an explain operation due to Nieuwenhuis and Oliveras. We devise a simpler, more naive version of the explain operation whose soundness and completeness is easy to verify. Then,…

Logic in Computer Science · Computer Science 2025-08-12 Lukas Stevens , Rebecca Ghidini

Formal verification provides mathematical guarantees that a software is correct. Design-level verification tools ensure software specifications are correct, but they do not expose defects in actual implementations. For this purpose,…

Software Engineering · Computer Science 2025-05-01 Paschal C. Amusuo , Parth V. Patil , Owen Cochell , Taylor Le Lievre , James C. Davis

Hardware-software contracts are abstract specifications of a CPU's leakage behavior. They enable verifying the security of high-level programs against side-channel attacks without having to explicitly reason about the microarchitectural…

Programming Languages · Computer Science 2026-04-13 Arthur Correnson , Haoyi Zeng , Jana Hofmann

Runtime verification (RV) has the potential to enable the safe operation of safety-critical systems that are too complex to formally verify, such as Robot Operating System 2 (ROS2) applications. Writing correct monitors can itself be…

Robotics · Computer Science 2022-09-29 Ivan Perez , Anastasia Mavridou , Tom Pressburger , Alexander Will , Patrick J. Martin