English
Related papers

Related papers: Bringing Iris into the Verified Software Toolchain

200 papers

Software verification has recently made enormous progress due to the development of novel verification methods and the speed-up of supporting technologies like SMT solving. To keep software verification tools up to date with these advances,…

Software Engineering · Computer Science 2020-08-12 Jan Haltermann , Heike Wehrheim

The main function of IDS (Intrusion Detection System) is to protect the system, analyze and predict the behaviors of users. Then these behaviors will be considered an attack or a normal behavior. Though IDS has been developed for many…

Machine Learning · Computer Science 2010-07-15 Rung-Ching Chen , Kai-Fan Cheng , Chia-Fen Hsieh

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…

Machine Learning · Computer Science 2021-05-07 John Törnblom , Simin Nadjm-Tehrani

In the last three decades, memory safety issues in system programming languages such as C or C++ have been one of the significant sources of security vulnerabilities. However, there exist only a few attempts with limited success to cope…

Software Engineering · Computer Science 2021-07-05 Felipe R. Monteiro , Mikhail R. Gadelha , Lucas C. Cordeiro

An engineering design process may involve software modules that can executed concurrently. Concurrent modules can be very easily subject to some synchronization errors. This paper discusses verification process for such engineering…

Software Engineering · Computer Science 2017-04-24 Jerzy Mieścicki , Mikołaj Baszun , Wiktor B. Daszczuk , Bogdan D. Czejdo

Automated program verifiers are often organized into a front-end, which encodes an input program into an intermediate verification language (IVL), and a back-end, which proves that the IVL program is correct. Soundness of such translational…

Programming Languages · Computer Science 2026-03-23 Hongyi Ling , Thibault Dardinier , Ellen Arlt , Peter Müller

Despite the recent progress of automated program verification techniques, fully automated verification of programs manipulating recursive data structures remains a challenge. We introduce solvable tuple patterns (STPs) and conjunctive STPs…

Programming Languages · Computer Science 2026-05-27 Naoki Kobayashi , Ryosuke Sato , Ayumi Shinohara , Ryo Yoshinaka

We present our ongoing work on developing an end-to-end verified Rust compiler based on CompCert. It provides two guarantees: one is semantics preservation from Rust to assembly, i.e., the behaviors of source code includes the behaviors of…

Programming Languages · Computer Science 2026-02-10 Jinhua Wu , Yuting Wang , Liukun Yu , Linglong Meng

Ensuring the correct functionality of systems software, given its safety-critical and low-level nature, is a primary focus in formal verification research and applications. Despite advances in verification tooling, conventional programmers…

Programming Languages · Computer Science 2025-04-04 Yiyuan Cao , Jiayi Zhuang , Houjin Chen , Jinkai Fan , Wenbo Xu , Zhiyi Wang , Di Wang , Qinxiang Cao , Yingfei Xiong , Haiyan Zhao , Zhenjiang Hu

Ensuring string stability is critical for the safety and efficiency of large-scale interconnected systems. Although learning-based controllers (e.g., those based on reinforcement learning) have demonstrated strong performance in complex…

Systems and Control · Electrical Eng. & Systems 2025-09-15 Jingyuan Zhou , Haoze Wu , Haokun Yu , Kaidi Yang

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…

Logic in Computer Science · Computer Science 2025-03-04 Yeonseok Lee , Koji Nakazawa

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…

Logic in Computer Science · Computer Science 2017-01-11 Bart Jacobs , Frédéric Vogels , Frank Piessens

Program verification tools are often implemented as front-end translations of an input program into an intermediate verification language (IVL) such as Boogie, GIL, Viper, or Why3. The resulting IVL program is then verified using an…

Programming Languages · Computer Science 2024-12-23 Thibault Dardinier , Michael Sammler , Gaurav Parthasarathy , Alexander J. Summers , Peter Müller

System relevant embedded software needs to be reliable and, therefore, well tested, especially for aerospace systems. A common technique to verify programs is the analysis of their abstract syntax tree (AST). Tree structures can be…

Software Engineering · Computer Science 2017-01-09 Frank Flederer , Ludwig Ostermayer , Dietmar Seipel , Sergio Montenegro

The safety of cyber-physical systems rests on the correctness of their monitoring mechanisms. This is problematic if the specification of the monitor is implemented manually or interpreted by unreliable software. We present a verifying…

Software Engineering · Computer Science 2020-12-17 Bernd Finkbeiner , Stefan Oswald , Noemi Passing , Maximilian Schwenger

Distributed quantum systems and especially the Quantum Internet have the ever-increasing potential to fully demonstrate the power of quantum computation. This is particularly true given that developing a general-purpose quantum computer is…

Quantum Physics · Physics 2022-06-29 Yuan Feng , Sanjiang Li , Mingsheng Ying

Automated verification tools based on SMT solvers have made significant progress in verifying complex software systems. However, these tools face a fundamental tension between automation and performance when dealing with quantifier…

Software Engineering · Computer Science 2025-12-04 Alexander Y. Bai , Chris Hawblitzel , Andrea Lattuada

As software systems increase in size and complexity dramatically, ensuring their correctness, security, and reliability becomes an increasingly formidable challenge. Despite significant advancements in verification techniques and tools,…

We present and verify template algorithms for lock-free concurrent search structures that cover a broad range of existing implementations based on lists and skiplists. Our linearizability proofs are fully mechanized in the concurrent…

Programming Languages · Computer Science 2024-05-24 Nisarg Patel , Dennis Shasha , Thomas Wies

Scalable and automatic formal verification for concurrent systems is always demanding. In this paper, we propose a verification framework to support automated compositional reasoning for concurrent programs with shared variables. Our…

Formal Languages and Automata Theory · Computer Science 2018-03-28 Fuyuan Zhang , Yongwang Zhao , David Sanan , Yang Liu , Alwen Tiu , Shang-Wei Lin , Jun Sun