English
Related papers

Related papers: Model Checking C++ Programs

200 papers

Secure Multi-Party Computation (MPC) is an important enabling technology for data privacy in modern distributed applications. We develop a new type theory to automatically enforce correctness,confidentiality, and integrity properties of…

Cryptography and Security · Computer Science 2025-01-30 Christian Skalka , Joseph P. Near

A compiler bug arises if the behaviour of a compiled concurrent program, as allowed by its architecture memory model, is not a behaviour permitted by the source program under its source model. One might reasonably think that most compiler…

Programming Languages · Computer Science 2024-01-19 Luke Geeson

AI coding assistants powered by large language models (LLMs) have transformed software development, significantly boosting productivity. While existing benchmarks evaluate the correctness and security of LLM-generated code, they are…

Software Engineering · Computer Science 2025-10-17 Ruchit Rawal , Jeffrey Yang Fan Chiang , Chihao Shen , Jeffery Siyuan Tian , Aastha Mahajan , Tom Goldstein , Yizheng Chen

In recent projects on operating-system verification, C and C++ data types are often formalized using a semantics that does not fully specify the precise byte encoding of objects. It is well-known that such an underspecified data-type…

Logic in Computer Science · Computer Science 2012-11-28 Hendrik Tews , Marcus Völp , Tjark Weber

As scientific applications extend to the simulation of more and more complex systems, they involve an increasing number of abstraction levels, at each of which errors can emerge and across which they can propagate; tools for correctness…

Software Engineering · Computer Science 2011-01-18 Eloisa Bentivegna , Gabrielle Allen , Oleg Korobkin , Erik Schnetter

This paper investigates approaches to parallelizing Bounded Model Checking (BMC) for shared memory environments as well as for clusters of workstations. We present a generic framework for parallelized BMC named Tarmo. Our framework can be…

Logic in Computer Science · Computer Science 2009-12-15 Siert Wieringa , Matti Niemenmaa , Keijo Heljanko

Like text, programs have styles, and certain programming styles are more desirable than others for program readability, maintainability, and performance. Code style transfer, however, is difficult to automate except for trivial style…

Software Engineering · Computer Science 2024-06-18 Karl Munson , Chih-Kai Ting , Serenity Wade , Anish Savla , Julian Dolby , Kiran Kate , Kavitha Srinivas

We present SilVer (Silq Verification), an automated tool for verifying behaviors of quantum programs written in Silq, which is a high-level programming language for quantum computing. The goal of the verification is to ensure correctness of…

Quantum Physics · Physics 2024-09-11 Marco Lewis , Paolo Zuliani , Sadegh Soudjani

The need to model and analyse dynamic systems operating over complex data is ubiquitous in AI and neighboring areas, in particular business process management. Analysing such data-aware systems is a notoriously difficult problem, as they…

Logic in Computer Science · Computer Science 2023-10-20 Alessandro Gianola , Marco Montali , Sarah Winkler

Software debugging is a very time-consuming process, which is even worse for multi-threaded programs, due to the non-deterministic behavior of thread-scheduling algorithms. However, the debugging time may be greatly reduced, if automatic…

Logic in Computer Science · Computer Science 2015-09-09 Erickson H. da S. Alves , Lucas C. Cordeiro , Eddie B. de Lima Filho

Verifying hardware designs in embedded systems is crucial but often labor-intensive and time-consuming. While existing solutions have improved automation, they frequently rely on unrealistic assumptions. To address these challenges, we…

Hardware Architecture · Computer Science 2024-11-26 Yuchen Hu , Junhao Ye , Ke Xu , Jialin Sun , Shiyue Zhang , Xinyao Jiao , Dingrong Pan , Jie Zhou , Ning Wang , Weiwei Shan , Xinwei Fang , Xi Wang , Nan Guan , Zhe Jiang

Current algorithms for bounded model checking use SAT methods for checking satisfiability of Boolean formulae. These methods suffer from the potential memory explosion problem. Methods based on the validity of Quantified Boolean Formulae…

Logic in Computer Science · Computer Science 2011-11-09 Jacob Katz , Ziyad Hanna , Nachum Dershowitz

In this work we develop a fully automatic verification procedure of safety properties of Scade programs. We transform each such program into an SMT instance (Satisfiability Modulo Theories) and feed this to a solver. The goal is to have a…

Logic in Computer Science · Computer Science 2014-03-13 Henning Basold

Large Language Models (LLMs) are emerging as transformative tools for software vulnerability detection, addressing critical challenges in the security domain. Traditional methods, such as static and dynamic analysis, often falter due to…

Cryptography and Security · Computer Science 2025-02-19 Ze Sheng , Zhicheng Chen , Shuning Gu , Heqing Huang , Guofei Gu , Jeff Huang

There is increasing interest in applying verification tools to programs that have bitvector operations (eg., binaries). SMT solvers, which serve as a foundation for these tools, have thus increased support for bitvector reasoning through…

Programming Languages · Computer Science 2021-08-31 Yuandong Cyrus Liu , Chengbin Pang , Daniel Dietsch , Eric Koskinen , Ton-Chanh Le , Georgios Portokalidis , Jun Xu

We describe BayesMix, a C++ library for MCMC posterior simulation for general Bayesian mixture models. The goal of BayesMix is to provide a self-contained ecosystem to perform inference for mixture models to computer scientists,…

Computation · Statistics 2022-05-18 Mario Beraha , Bruno Guindani , Matteo Gianella , Alessandra Guglielmi

Atomicity violation is one of the most serious types of bugs in concurrent programs. Synchronizations are commonly used to enforce atomicity. However, it is very challenging to place synchronizations correctly and sufficiently due to…

Software Engineering · Computer Science 2025-04-24 Zhuang Li , Qiuping Yi , Jeff Huang

Universal quantifiers occur frequently in proof obligations produced by program verifiers, for instance, to axiomatize uninterpreted functions and to express properties of arrays. SMT-based verifiers typically reason about them via…

Programming Languages · Computer Science 2021-12-15 Alexandra Bugariu , Arshavir Ter-Gabrielyan , Peter Müller

Security patch detection (SPD) is crucial for maintaining software security, as unpatched vulnerabilities can lead to severe security risks. In recent years, numerous learning-based SPD approaches have demonstrated promising results on…

Software Engineering · Computer Science 2025-09-09 Qingyuan Li , Binchang Li , Cuiyun Gao , Shuzheng Gao , Zongjie Li

Verifying quantum systems has attracted a lot of interest in the last decades.In this paper, we study the quantitative model-checking of quantum continuous-time Markov chains (quantum CTMCs). The branching-time properties of quantum CTMCs…

Logic in Computer Science · Computer Science 2025-11-19 Ming Xu , Jingyi Mei , Ji Guan , Yuxin Deng , Nengkun Yu