English
Related papers

Related papers: An Automatically Verified Prototype of the Android…

200 papers

We present the design, implementation, and foundation of a verifier for higher-order functional programs with generics and recursive data types. Our system supports proving safety and termination using preconditions, postconditions and…

Logic in Computer Science · Computer Science 2020-03-25 Jad Hamza , Nicolas Voirol , Viktor Kunčak

Zero-knowledge (ZK) proof systems have emerged as a promising solution for building security-sensitive applications. However, bugs in ZK applications are extremely difficult to detect and can allow a malicious party to silently exploit the…

Cryptography and Security · Computer Science 2023-04-19 Junrui Liu , Ian Kretz , Hanzhi Liu , Bryan Tan , Jonathan Wang , Yi Sun , Luke Pearson , Anders Miltner , Işıl Dillig , Yu Feng

Automatic and efficient verification of multiplier designs, especially through a provably correct method, is a difficult problem. We show how to utilize a theorem prover, ACL2, to implement an efficient rewriting algorithm for multiplier…

Logic in Computer Science · Computer Science 2022-05-25 Mertcan Temel

Generative AI has shown its values for many software engineering tasks. Still in its infancy, large language model (LLM)-based proof generation lags behind LLM-based code generation. In this paper, we present AutoVerus. AutoVerus uses LLMs…

Whereas proof assistants based on Higher-Order Logic benefit from external solvers' automation, those based on Type Theory resist automation and thus require more expertise. Indeed, the latter use a more expressive logic which is further…

Logic in Computer Science · Computer Science 2021-07-07 Valentin Blot , Louise Dubois de Prisque , Chantal Keller , Pierre Vial

Due to their numerous advantages, formal proofs and proof assistants, such as Coq, are becoming increasingly popular. However, one disadvantage of using proof assistants is that the resulting proofs can sometimes be hard to read and…

Programming Languages · Computer Science 2017-12-12 Andrew Bedford

This article describes the application of a credible autocoding framework for control systems towards a nonlinear car controller example. The framework generates code, along with guarantees of high level functional properties about the code…

Systems and Control · Computer Science 2013-08-28 Timothy Wang , Eric Feron

Formal Methods are mathematically-based techniques for software design and engineering, which enable the unambiguous description of and reasoning about a system's behaviour. Autonomous systems use software to make decisions without human…

Software Engineering · Computer Science 2021-07-29 Matt Luckcuck

We present OSVAuto for automatic proofs about functional specifications that commonly arise when verifying operating system kernels. The algorithm behind OSVAuto is designed to support natively those data types that commonly occur in OS…

Symbolic Computation · Computer Science 2025-05-23 Yulun Wu , Bican Xia , Jiale Xu , Bohua Zhan , Tianqi Zhao

We describe jsCcoq, a new platform and user environment for the Coq interactive proof assistant. The jsCoq system targets the HTML5-ECMAScript 2015 specification, and it is typically run inside a standards-compliant browser, without the…

Programming Languages · Computer Science 2017-01-26 Emilio Jesús Gallego Arias , Benoît Pin , Pierre Jouvelot

We describe a new approach to automatically repairing broken proofs in the Coq proof assistant in response to changes in types. Our approach combines a configurable proof term transformation with a decompiler from proof terms to tactic…

Programming Languages · Computer Science 2021-05-13 Talia Ringer , RanDair Porter , Nathaniel Yazdani , John Leo , Dan Grossman

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

Enabling fully automated testing of mobile applications has recently become an important topic of study for both researchers and practitioners. A plethora of tools and approaches have been proposed to aid mobile developers both by…

Software Engineering · Computer Science 2018-01-22 Mario Linares Vasquez , Carlos Bernal-Cardenas , Kevin Moran , Denys Poshyvanyk

Formal reasoning and automated theorem proving constitute a challenging subfield of machine learning, in which machines are tasked with proving mathematical theorems using formal languages like Lean. A formal verification system can check…

Artificial Intelligence · Computer Science 2025-11-05 Azim Ospanov , Farzan Farnia , Roozbeh Yousefzadeh

In this position paper we advocate software model checking as a technique suitable for security analysis of mobile apps. Our recommendation is based on promising results that we achieved on analysing app collusion in the context of the…

Software Engineering · Computer Science 2017-06-16 Irina Mariuca Asavoae , Hoang Nga Nguyen , Markus Roggenbach , Siraj Ahmed Shaikh

Xavier Leroy and Sandrine Blazy in 2007 conducted a formal verification, using the Coq proof assistant, of a memory model for low-level imperative languages such as C. Considering their formalization was performed essentially in first-order…

Logic in Computer Science · Computer Science 2022-12-06 Pedro Barroso , Mário Pereira , António Ravara

Programmable Logic Controllers (PLC) and its programming standard IEC 61131-3 are widely used in embedded systems for the industrial automation domain. We propose a framework for the formal treatment of PLC based on the IEC 61131-3…

Software Engineering · Computer Science 2013-01-15 Jan Olaf Blech , Sidi Ould Biha

We give a new theoretical solution to a leading-edge experimental challenge, namely to the verification of quantum computations in the regime of high computational complexity. Our results are given in the language of quantum interactive…

Quantum Physics · Physics 2018-06-25 Anne Broadbent

Interactive theorem provers such as Coq are powerful tools to formally guarantee the correctness of software. However, using these tools requires significant manual effort and expertise. While Large Language Models (LLMs) have shown promise…

Software Engineering · Computer Science 2024-09-24 Minghai Lu , Benjamin Delaware , Tianyi Zhang

Consensus protocols are crucial for a blockchain system as they are what allow agreement between the system's nodes in a potentially adversarial environment. For this reason, it is paramount to ensure their correct design and implementation…

Cryptography and Security · Computer Science 2026-01-13 Elliot Jones , William Knottenbelt