中文
相关论文

相关论文: Verifying Array Manipulating Programs with Full-Pr…

200 篇论文

We present the first approach to prove non-termination of integer programs that is based on loop acceleration. If our technique cannot show non-termination of a loop, it tries to accelerate it instead in order to find paths to other…

计算机科学中的逻辑 · 计算机科学 2019-08-09 Florian Frohn , Jürgen Giesl

Formal verification of complex algorithms is challenging. Verifying their implementations goes beyond the state of the art of current automatic verification tools and usually involves intricate mathematical theorems. Certifying algorithms…

计算机科学中的逻辑 · 计算机科学 2013-02-01 Eyad Alkassar , Sascha Böhme , Kurt Mehlhorn , Christine Rizkallah

2LS ("tools") is a verification tool for C programs, built upon the CPROVER framework. It allows one to verify user-specified assertions, memory safety properties (e.g. buffer overflows), numerical overflows, division by zero, memory leaks,…

软件工程 · 计算机科学 2023-02-07 Daniel Kroening , Viktor Malík , Peter Schrammel , Tomáš Vojnar

High-level synthesis, source-to-source compilers, and various Design Space Exploration techniques for pragma insertion have significantly improved the Quality of Results of generated designs. These tools offer benefits such as reduced…

软件工程 · 计算机科学 2025-03-04 Stéphane Pouget , Louis-Noël Pouchet , Jason Cong

Verification problems of programs written in various paradigms (such as imperative, logic, concurrent, functional, and object-oriented ones) can be reduced to problems of solving Horn clause constraints on predicate variables that represent…

编程语言 · 计算机科学 2016-10-24 Hiroshi Unno , Sho Torii

Precondition inference is a non-trivial problem with important applications in program analysis and verification. We present a novel iterative method for automatically deriving preconditions for the safety and unsafety of programs. Each…

编程语言 · 计算机科学 2023-06-22 Bishoksan Kafle , Graeme Gange , Peter J. Stuckey , Peter Schachte , Harald Sondergaard

Equation-based modelling is a powerful approach to tame the complexity of large-scale simulation problems. Equation-based tools automatically translate models into imperative languages. When confronted with nowadays' problems, however, well…

In this paper, we present a novel approach to synthesize invariant clusters for polynomial programs. An invariant cluster is a set of program invariants that share a common structure, which could, for example, be used to save the needs for…

系统与控制 · 计算机科学 2022-03-16 Qiuye Wang , Lihong Zhi , Naijun Zhan , Bai Xue , Zhi-hong Yang

Property-directed reachability (PDR) is a SAT/SMT-based reachability algorithm that incrementally constructs inductive invariants. After it was successfully applied to hardware model checking, several adaptations to software model checking…

软件工程 · 计算机科学 2020-02-25 Dirk Beyer , Matthias Dangl

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…

编程语言 · 计算机科学 2022-04-15 Yuxiang Peng , Kesha Hietala , Runzhou Tao , Liyi Li , Robert Rand , Michael Hicks , Xiaodi Wu

The demonstrated code-understanding capability of LLMs raises the question of whether they can be used for automated program verification, a task that demands high-level abstract reasoning about program properties that is challenging for…

形式语言与自动机理论 · 计算机科学 2024-04-26 Haoze Wu , Clark Barrett , Nina Narodytska

Applications like program synthesis sometimes require proving that a property holds for all of the infinitely many programs described by a grammar - i.e., an inductively defined set of programs. Current verification frameworks…

编程语言 · 计算机科学 2025-07-29 Jinwoo Kim , Shaan Nagy , Thomas Reps , Loris D'Antoni

Automatic software verification tools help to find hard-to-detect faults in programs checked against specified requirements non-interactively. Besides, they can prove program correctness formally under certain assumptions. These…

软件工程 · 计算机科学 2023-09-29 Ilja Zakharov , Evgeny Novikov , Ilya Shchepetkov

Computer programming is among the fundamental aspects of computer science curriculum. Many students first introduced to introductory computer programming courses experience difficulties in learning and comprehending. Vast amount of…

编程语言 · 计算机科学 2014-08-13 Ally S. Nyamawe

This talk describes how a combination of symbolic computation techniques with first-order theorem proving can be used for solving some challenges of automating program analysis, in particular for generating and proving properties about the…

编程语言 · 计算机科学 2017-04-17 Laura Kovacs

We study the uniform verification problem for infinite state processes, which consists of proving that the parallel composition of an arbitrary number of processes satisfies a temporal property. Our practical motivation is to build a…

计算机科学中的逻辑 · 计算机科学 2014-01-10 Alejandro Sánchez , César Sánchez

We present a generic framework to make wrapper induction algorithms tolerant to noise in the training data. This enables us to learn wrappers in a completely unsupervised manner from automatically and cheaply obtained noisy training data,…

数据库 · 计算机科学 2011-03-15 Nilesh Dalvi , Ravi Kumar , Mohamed Soliman

Language models (LMs) can solve tasks such as answering questions about tables or images by writing programs. However, using primitive functions often leads to verbose and error-prone programs, and higher-level functions require expert…

人工智能 · 计算机科学 2024-01-24 Zhiruo Wang , Daniel Fried , Graham Neubig

It is important that consumers and regulators can verify the provenance of large neural models to evaluate their capabilities and risks. We introduce the concept of a "Proof-of-Training-Data": any protocol that allows a model trainer to…

机器学习 · 计算机科学 2023-07-04 Dami Choi , Yonadav Shavit , David Duvenaud

Unintended failures during a computation are painful but frequent during software development. Failures due to external reasons (e.g., missing files, no permissions) can be caught by exception handlers. Programming failures, such as calling…

编程语言 · 计算机科学 2024-02-21 Michael Hanus