中文
相关论文

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

200 篇论文

We present a tool for verification of deterministic programs with shared mutable references against specifications such as assertions, preconditions, postconditions, and read/write effects. We implement our tool by encoding programs with…

计算机科学中的逻辑 · 计算机科学 2021-03-16 Georg Schmid , Viktor Kunčak

Automatic verification of concurrent programs faces state explosion due to the exponential possible interleavings of its sequential components coupled with large or infinite state spaces. An alternative is deductive verification, where…

编程语言 · 计算机科学 2024-01-01 Yuan Xia , Jyotirmoy V. Deshmukh , Mukund Raghothaman , Srivatsan Ravi

We propose a novel framework of program and invariant synthesis called neural network-guided synthesis. We first show that, by suitably designing and training neural networks, we can extract logical formulas over integers from the weights…

编程语言 · 计算机科学 2021-08-26 Naoki Kobayashi , Taro Sekiyama , Issei Sato , Hiroshi Unno

This paper presents a novel approach to automatically verify properties of pure data-parallel programs with non-linear indexing -- expressed as pre- and post-conditions on functions. Programs consist of nests of second-order array…

编程语言 · 计算机科学 2025-07-01 Nikolaj Hey Hinnerskov , Robert Schenck , Cosmin E. Oancea

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 develop a framework for model checking infinite-state systems by automatically augmenting them with auxiliary variables, enabling quantifier-free induction proofs for systems that would otherwise require quantified invariants. We combine…

计算机科学中的逻辑 · 计算机科学 2023-06-22 Makai Mann , Ahmed Irfan , Alberto Griggio , Oded Padon , Clark Barrett

Context. Variability-intensive programs (program families) appear in many application areas and for many reasons today. Different family members, called variants, are derived by switching statically configurable options (features) on and…

A representation invariant is a property that holds of all values of abstract type produced by a module. Representation invariants play important roles in software engineering and program verification. In this paper, we develop a…

编程语言 · 计算机科学 2020-03-30 Anders Miltner , Saswat Padhi , Todd Millstein , David Walker

We propose an automated verification technique for hypersafety properties, which express sets of valid interrelations between multiple finite runs of a program. The key observation is that constructing a proof for a small representative set…

编程语言 · 计算机科学 2019-05-23 Azadeh Farzan , Anthony Vandikas

We present an automated reasoning framework for synthesizing recursion-free programs using saturation-based theorem proving. Given a functional specification encoded as a first-order logical formula, we use a first-order theorem prover to…

计算机科学中的逻辑 · 计算机科学 2024-03-01 Petra Hozzová , Laura Kovács , Chase Norman , Andrei Voronkov

We describe a system to prove properties of programs. The key feature of this approach is a method to automatically synthesize inductive invariants of the loops contained in the program. The method is generic, i.e., it applies to a large…

计算机科学中的逻辑 · 计算机科学 2019-06-27 Mnacho Echenim , Nicolas Peltier , Yanis Sellami

The use of interpolants in model checking is becoming an enabling technology to allow fast and robust verification of hardware and software. The application of encodings based on the theory of arrays, however, is limited by the…

计算机科学中的逻辑 · 计算机科学 2015-07-01 Roberto Bruttomesso , Silvio Ghilardi , Silvio Ranise

We present a proof by induction algorithm, which combines k-induction with invariants to model check embedded C software with bounded and unbounded loops. The k-induction algorithm consists of three cases: in the base case, we aim to find a…

计算机科学中的逻辑 · 计算机科学 2015-09-09 Herbert Rocha , Hussama Ismail , Lucas Cordeiro , Raimundo Barreto

We study induction on the program structure as a proof method for bisimulation-based compiler correctness. We consider a first-order language with mutually recursive function definitions, system calls, and an environment semantics. The…

编程语言 · 计算机科学 2016-11-30 Sigurd Schneider , Gert Smolka , Sebastian Hack

We present an extension to the quantifier-free theory of integer arrays which allows us to express counting. The properties expressible in Array Folds Logic (AFL) include statements such as "the first array cell contains the array length,"…

形式语言与自动机理论 · 计算机科学 2016-05-13 Przemysław Daca , Thomas A. Henzinger , Andrey Kupriyanov

Analyzing and verifying heap-manipulating programs automatically is challenging. A key for fighting the complexity is to develop compositional methods. For instance, many existing verifiers for heap-manipulating programs require…

编程语言 · 计算机科学 2019-08-28 Long H. Pham , Jun Sun , Quang Loc Le

Program verification is vital for ensuring software reliability, especially in the context of increasingly complex systems. Loop invariants, remaining true before and after each iteration of loops, are crucial for this verification process.…

编程语言 · 计算机科学 2024-06-10 Chang Liu , Xiwei Wu , Yuan Feng , Qinxiang Cao , Junchi Yan

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

We present the first fully automatic framework for verifying relational properties of parameterized quantum programs, i.e., a program that, given an input size, generates a corresponding quantum circuit. We focus on verifying input-output…

计算机科学中的逻辑 · 计算机科学 2025-12-03 Parosh Aziz Abdulla , Yu-Fang Chen , Michal Hečko , Lukáš Holík , Ondřej Lengál , Jyun-Ao Lin , Ramanathan S. Thinniyam

We present a new procedure to infer size bounds for integer programs automatically. Size bounds are important for the deduction of bounds on the runtime complexity or in general, for the resource analysis of programs. We show that our…

计算机科学中的逻辑 · 计算机科学 2024-11-19 Nils Lommen , Jürgen Giesl