中文
相关论文

相关论文: On using VeriFast, VerCors, Plural, and KeY to che…

200 篇论文

Typestates are state machines used in object-oriented programming to specify and verify correct order of method calls on an object. To avoid inconsistent object states, typestates enforce linear typing, which eliminates - or at best limits…

编程语言 · 计算机科学 2021-07-29 Mathias Jakobsen , Alice Ravier , Ornela Dardha

VeriFast is a prototype tool based on separation logic for modular verification of C and Java programs. We are in the process of adding support for C++. In this report, we describe the features of C++ for which we added support so far, as…

计算机科学中的逻辑 · 计算机科学 2022-12-29 Niels Mommen , Bart Jacobs

VeriFast is a leading research prototype tool for the sound modular verification of safety and correctness properties of single-threaded and multithreaded C and Java programs. It has been used as a vehicle for exploration and validation of…

计算机科学中的逻辑 · 计算机科学 2017-01-11 Bart Jacobs , Frédéric Vogels , Frank Piessens

We describe a generative approach that enables concurrent typestate-oriented programming in Java and other mainstream languages. The approach allows programmers to implement objects exposing a state-sensitive interface using a high-level…

编程语言 · 计算机科学 2019-04-03 Rosita Gerbo , Luca Padovani

Development of software is an iterative process. Graphical tools to represent the relevant entities and processes can be helpful. In particular, automata capture well the intended execution flow of applications, and are thus behind many…

软件工程 · 计算机科学 2020-09-21 André Trindade , João Mota , António Ravara

Distributed systems have become increasingly prevalent in the software industry. Due to their intrinsic complexity, much research has focused on the verification of their behaviour. An active research line is around behaviour models that…

编程语言 · 计算机科学 2026-04-09 Francisco Parrinha , João Mota , António Ravara

Static program verifiers such as Spec#, Dafny, jStar, and VeriFast define the state of the art in automated functional verification techniques. The next open challenges are to make verification tools usable even by programmers not fluent in…

软件工程 · 计算机科学 2011-06-24 Julian Tschannen , Carlo A. Furia , Martin Nordio , Bertrand Meyer

In today's software development landscape, the extent to which Java applications utilize object-oriented programming paradigm remains a subject of interest. Although some researches point to the considerable overhead associated with object…

软件工程 · 计算机科学 2024-10-10 Vladimir Zakharov , Yegor Bugayenko

Deductive verification of software has not yet found its way into industry, as complexity and scalability issues require highly specialized experts. The long-term perspective is, however, to develop verification tools aiding industrial…

编程语言 · 计算机科学 2018-11-28 Alexander Knüppel , Thomas Thüm , Carsten Pardylla , Ina Schaefer

As a particular case study of the formal verification of state-of-the-art, real software, we discuss the specification and verification of a corrected version of the implementation of a linked list as provided by the Java Collection…

计算机科学中的逻辑 · 计算机科学 2019-11-12 Hans-Dieter A. Hiep , Olaf Maathuis , Jinting Bian , Frank S. de Boer , Marko van Eekelen , Stijn de Gouw

Typestate systems are notoriously complex as they require sophisticated machinery for tracking aliasing. We propose a new, transition-oriented foundation for typestate in the setting of impure functional programming. Our approach relies on…

编程语言 · 计算机科学 2024-09-27 Hannes Saffrich , Yuki Nishida , Peter Thiemann

In this paper we report the experience of using AutoProof to statically verify a small object oriented program. We identified the problems that emerged by this activity and we classified them according to their nature. In particular, we…

软件工程 · 计算机科学 2017-06-20 Mansur Khazeev , Victor Rivera , Manuel Mazzara , Leonard Johard

Static verification of a program source code correctness is an important element of software reliability. Formal verification of software programs involves proving that a program satisfies a formal specification of its behavior. Many…

VeriFast is a powerful tool for verification of various correctness properties of C programs using symbolic execution. However, VeriFast itself has not been verified. We present a proof-of-concept extension which generates a correctness…

计算机科学中的逻辑 · 计算机科学 2021-10-22 Stefan Wils , Bart Jacobs

Test or prove? These two approaches to software verification have long been presented as opposites. One is dynamic, the other static: a test executes the program, a proof only analyzes the program text. A different perspective is emerging,…

软件工程 · 计算机科学 2026-02-10 Li Huang , Bertrand Meyer , Manuel Oriol

Interactive program verification is characterized by iterations of unfinished proof attempts. To support the process of constructing a complete proof, many interactive program verification systems offer a proof scripting language as a…

计算机科学中的逻辑 · 计算机科学 2018-04-13 Bernhard Beckert , Sarah Grebing , and Alexander Weigl

VeriFast is a powerful tool for verification of various correctness properties of C programs using symbolic execution. However, VeriFast itself has not been verified. We present a proof-of-concept extension which generates a correctness…

计算机科学中的逻辑 · 计算机科学 2023-08-31 Stefan Wils , Bart Jacobs

To guarantee that machine learning models yield outputs that are not only accurate, but also robust, recent works propose formally verifying robustness properties of machine learning models. To be applicable to realistic safety-critical…

机器学习 · 计算机科学 2021-05-07 John Törnblom , Simin Nadjm-Tehrani

Static verification is a powerful method for enhancing software quality, but it demands significant human labor and resources. This is particularly true of static verifiers that reason about heap manipulating programs using an ownership…

软件工程 · 计算机科学 2025-01-06 Wen Fan , Marilyn Rego , Xin Hu , Sanya Dod , Zhaorui Ni , Danning Xie , Jenna DiVincenzo , Lin Tan

VeriFast is a leading tool for the modular formal verification of correctness properties of single-threaded and multi-threaded C and Rust programs. It verifies a program by symbolically executing each function in isolation, exploiting…

编程语言 · 计算机科学 2026-01-21 Bart Jacobs
‹ 上一页 1 2 3 10 下一页 ›