English
Related papers

Related papers: Functional Equivalence Checking for Verification o…

200 papers

MapReduce frameworks are widely used for the implementation of distributed algorithms. However, translating imperative algorithms into these frameworks requires significant structural changes to the algorithm. As the costs of running faulty…

Logic in Computer Science · Computer Science 2018-02-07 Bernhard Beckert , Timo Bingmann , Moritz Kiefer , Peter Sanders , Mattias Ulbrich , Alexander Weigl

Increasing design complexity driven by feature and performance requirements and the Time to Market (TTM) constraints force a faster design and validation closure. This in turn enforces novel ways of identifying and debugging behavioral…

Software Engineering · Computer Science 2014-07-24 M V Achutha Kiran Kumar , Aarti Gupta , S S Bindumadhava

We propose an operationally-based deductive proof method for program equivalence. It is based on encoding the language semantics as logically constrained term rewriting systems (LCTRSs) and the two programs as terms. The main feature of our…

Logic in Computer Science · Computer Science 2020-01-28 Ştefan Ciobâcă , Dorel Lucanu , Andrei Sebastian Buruiană

A MATLAB toolbox is presented, with the goal of checking occurrences of design errors typically found in fixed-point digital systems, considering finite word-length effects. In particular, the present toolbox works as a front-end to a…

Systems and Control · Computer Science 2017-02-21 Lennon Chaves , Iury Bessa , Lucas Cordeiro , Daniel Kroening , Eddie Filho

Cyber-physical systems (CPS) such as autonomous cars, aircraft, and robots are often also safety-critical; thus it is imperative that they operate as intended with a high degree of certainty. Formal verification has been employed to verify…

Programming Languages · Computer Science 2026-05-07 Serra Z. Dane , Jiawei Chen , Marc Pouzet , Jean-Baptiste Jeannin

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…

Logic in Computer Science · Computer Science 2023-02-09 Kevin Batz , Mingshuai Chen , Sebastian Junges , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Christoph Matheja

SCOOP is a programming model and language that allows concurrent programming at a high level of abstraction. Several approaches to verifying SCOOP programs have been proposed in the past, but none of them operate directly on the source code…

Programming Languages · Computer Science 2015-05-21 Claudio Corrodi

Context: Mining software repositories is a popular means to gain insights into a software project's evolution, monitor project health, support decisions and derive best practices. Tools supporting the mining process are commonly applied by…

Software Engineering · Computer Science 2025-11-13 Nicole Hoess , Carlos Paradis , Rick Kazman , Wolfgang Mauerer

When are two algorithms the same? How can we be sure a recently proposed algorithm is novel, and not a minor twist on an existing method? In this paper, we present a framework for reasoning about equivalence between a broad class of…

Optimization and Control · Mathematics 2025-01-13 Shipu Zhao , Laurent Lessard , Madeleine Udell

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…

Programming Languages · Computer Science 2022-04-15 Yuxiang Peng , Kesha Hietala , Runzhou Tao , Liyi Li , Robert Rand , Michael Hicks , Xiaodi Wu

We present verification protocols to gain confidence in the correct performance of the realization of an arbitrary universal quantum computation. The derivation of the protocols is based on the fact that matchgate computations, which are…

Quantum Physics · Physics 2025-08-11 Jose Carrasco , Marc Langer , Antoine Neven , Barbara Kraus

This paper introduces several techniques that improve the scalability of the deductive verification of data-level programs working on arrays and matrices. First of all, we introduce a technique to rewrite expressions with (nested)…

Software Engineering · Computer Science 2026-05-14 Lars B. van den Haak , Anton Wijs , Marieke Huisman

Model transformations are the cornerstone of Model-Driven Engineering, and provide the essential mechanisms for manipulating and transforming models. Checking whether the output of a model transformation is correct is a manual and…

Software Engineering · Computer Science 2018-05-01 Javier Troya , Sergio Segura , Antonio Ruiz-Cortés

Technology mapping is an essential step in EDA flow. However, the function of the circuit may be changed after technology mapping, and equivalence checking (EC) based verification is highly necessary. The traditional EC method has…

Hardware Architecture · Computer Science 2023-12-25 Liwei Ni , Zonglin Yang , Jiaxi Zhang , Changhong Feng , Jianhua Liu , Guojie Luo , Huawei Li , Biwei Xie , Xingquan Li

Abstract interpreters are complex pieces of software: even if the abstract interpretation theory and companion algorithms are well understood, their implementations are subject to bugs, that might question the soundness of their…

Programming Languages · Computer Science 2021-10-19 Lucas Franceschino , David Pichardie , Jean-Pierre Talpin

One of the big challenges in program obfuscation consists in modifying not only the program's straight-line code (SLC) but also the program's control flow graph (CFG). Indeed, if only SLC is modified, the program's CFG can be extracted and…

Cryptography and Security · Computer Science 2017-09-26 Rémi Géraud , Mirko Koscina , Paul Lenczner , David Naccache , David Saulpic

We consider the problem of refuting equivalence of probabilistic programs, i.e., the problem of proving that two probabilistic programs induce different output distributions. We study this problem in the context of programs with…

Programming Languages · Computer Science 2025-01-14 Krishnendu Chatterjee , Ehsan Kafshdar Goharshady , Petr Novotný , Đorđe Žikelić

In courses that involve programming assignments, giving meaningful feedback to students is an important challenge. Human beings can give useful feedback by manually grading the programs but this is a time-consuming, labor intensive, and…

Programming Languages · Computer Science 2020-10-19 Joshua Clune , Vijay Ramamurthy , Ruben Martins , Umut A. Acar

The complexity of modern software has led to a drastic increase in the time and cost associated with detecting and rectifying software bugs. In response, researchers have explored various methods to automatically generate fixes for buggy…

Software Engineering · Computer Science 2023-03-31 Md Mahim Anjum Haque , Wasi Uddin Ahmad , Ismini Lourentzou , Chris Brown

Typical constraints on embedded systems include code size limits, upper bounds on energy consumption and hard or soft deadlines. To meet these requirements, it may be necessary to improve the software by applying various kinds of…

Performance · Computer Science 2010-11-30 Hugues Cassé , Karine Heydemann , Haluk Ozaktas , Jonathan Ponroy , Christine Rochange , Olivier Zendra