中文
相关论文

相关论文: Automating Unrealizability Logic: Hoare-Style Proo…

200 篇论文

Mechanized verification of liveness properties for infinite programs with effects and nondeterminism is challenging. Existing temporal reasoning frameworks operate at the level of models such as traces and automata. Reasoning happens at a…

编程语言 · 计算机科学 2025-08-22 Eleftherios Ioannidis , Yannick Zakowski , Steve Zdancewic , Sebastian Angel

Formal verification can provably guarantee the correctness of critical system software, but the high proof burden has long hindered its wide adoption. Recently, Large Language Models (LLMs) have shown success in code analysis and synthesis.…

形式语言与自动机理论 · 计算机科学 2023-11-27 Jianan Yao , Ziqiao Zhou , Weiteng Chen , Weidong Cui

Formally verifying software properties is a highly desirable but labor-intensive task. Recent work has developed methods to automate formal verification using proof assistants, such as Coq and Isabelle/HOL, e.g., by training a model to…

机器学习 · 计算机科学 2023-03-17 Emily First , Markus N. Rabe , Talia Ringer , Yuriy Brun

This paper presents a program analysis method that generates program summaries involving polynomial arithmetic. Our approach builds on prior techniques that use solvable polynomial maps for summarizing loops. These techniques are able to…

编程语言 · 计算机科学 2023-12-08 John Cyphert , Zachary Kincaid

Previously, gradual verification has been developed using overapproximating logics such as Hoare logic. We show that the static verification component of gradual verification is also connected to underapproximating logics like incorrectness…

计算机科学中的逻辑 · 计算机科学 2024-12-03 Conrad Zimmerman , Jenna DiVincenzo

UCLID5 is a tool for the multi-modal formal modeling, verification, and synthesis of systems. It enables one to tackle verification problems for heterogeneous systems such as combinations of hardware and software, or those that have…

This paper describes a deductive approach to synthesizing imperative programs with pointers from declarative specifications expressed in Separation Logic. Our synthesis algorithm takes as input a pair of assertions---a pre- and a…

编程语言 · 计算机科学 2018-11-12 Nadia Polikarpova , Ilya Sergey

We consider the problem of how to verify the security of probabilistic oblivious algorithms formally and systematically. Unfortunately, prior program logics fail to support a number of complexities that feature in the semantics and…

编程语言 · 计算机科学 2024-07-02 Pengbo Yan , Toby Murray , Olga Ohrimenko , Van-Thuan Pham , Robert Sison

This paper presents a proof system for reasoning about execution time bounds for a core imperative programming language. Proof systems are defined for three different scenarios: approximations of the worst-case execution time, exact time…

编程语言 · 计算机科学 2022-10-28 Ana Carolina Silva , Manuel Barbosa , Mario Florido

Incorrectness Separation Logic (ISL) is a proof system that is tailored specifically to resolve problems of under-approximation in programs that manipulate heaps, and it primarily focuses on bug detection. This approach is different from…

计算机科学中的逻辑 · 计算机科学 2025-08-05 Yeonseok Lee , Koji Nakazawa

We introduce an extension of first-order logic that comes equipped with additional predicates for reasoning about an abstract state. Sequents in the logic comprise a main formula together with pre- and postconditions in the style of Hoare…

计算机科学中的逻辑 · 计算机科学 2024-08-07 Thomas Powell

While software requirements are often expressed in natural language, verifying the correctness of a program against such requirements is a hard and underexplored problem. Large language models (LLMs) are promising candidates for addressing…

软件工程 · 计算机科学 2025-08-26 Dimitrios Stamatios Bouras , Yihan Dai , Tairan Wang , Yingfei Xiong , Sergey Mechtaev

Essential tasks for the verification of probabilistic programs include bounding expected outcomes and proving termination in finite expected runtime. We contribute a simple yet effective inductive synthesis approach for proving such…

计算机科学中的逻辑 · 计算机科学 2023-02-09 Kevin Batz , Mingshuai Chen , Sebastian Junges , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Christoph Matheja

We present a program synthesis method based on unfold/fold transformation rules which can be used for deriving terminating definite logic programs from formulas of the Weak Monadic Second Order theory of one successor (WS1S). This synthesis…

编程语言 · 计算机科学 2007-05-23 F. Fioravanti , A. Pettorossi , M. Proietti

State-machine based notations are ubiquitous in the description of component systems, particularly in the robotic domain. To ensure these systems are safe and predictable, formal verification techniques are important, and can be…

计算机科学中的逻辑 · 计算机科学 2018-10-11 Simon Foster , James Baxter , Ana Cavalcanti , Alvaro Miyazawa , Jim Woodcock

We propose a general framework to allow: (a) specifying the operational semantics of a programming language; and (b) stating and proving properties about program correctness. Our framework is based on a many-sorted system of hybrid modal…

计算机科学中的逻辑 · 计算机科学 2025-12-01 Ioana Leustean , Natalia Moanga , Traian Florin Serbanuta

Incorrectness Separation Logic (ISL) is a proof system designed to automate verification and detect bugs in programs manipulating heap memories. In this study, we extend ISL to support variable-length array predicates and pointer…

计算机科学中的逻辑 · 计算机科学 2025-03-04 Yeonseok Lee , Koji Nakazawa

We report on work in progress on automatic procedures for proving properties of programs written in higher-order functional languages. Our approach encodes higher-order programs directly as first-order SMT problems over Horn clauses. It is…

计算机科学中的逻辑 · 计算机科学 2013-06-25 Nikolaj Bjorner , Ken McMillan , Andrey Rybalchenko

Rule-based systems remain central in safety-critical domains but often struggle with scalability, brittleness, and goal misspecification. These limitations can lead to reward hacking and failures in formal verification, as AI systems tend…

计算机科学中的逻辑 · 计算机科学 2026-05-12 Zainab Rehan , Christian Medeiros Adriano , Sona Ghahremani , Holger Giese

Several practical tools for automatically verifying functional programs (e.g., Liquid Haskell and Leon for Scala programs) rely on a heuristic based on unrolling recursive function definitions followed by quantifier-free reasoning using SMT…

计算机科学中的逻辑 · 计算机科学 2026-05-25 Adithya Murali , Lucas Peña , Ranjit Jhala , P. Madhusudan