English
Related papers

Related papers: Loop unrolling: formal definition and application …

200 papers

Optimization methods play a central role in signal processing, serving as the mathematical foundation for inference, estimation, and control. While classical iterative optimization algorithms provide interpretability and theoretical…

Machine Learning · Computer Science 2026-04-01 Nir Shlezinger , Santiago Segarra , Yi Zhang , Dvir Avrahami , Zohar Davidov , Tirza Routtenberg , Yonina C. Eldar

In program semantics and verification, reasoning about loops is complicated by the need to produce two separate mathematical arguments: an invariant, for functional properties (ignoring termination); and a variant, for termination (ignoring…

Programming Languages · Computer Science 2025-04-14 Bertrand Meyer

In this paper, we reconsider the unfolding-based technique that we have introduced previously for detecting loops in standard term rewriting. We improve it by guiding the unfolding process, using distinguished positions in the rewrite…

Programming Languages · Computer Science 2018-11-09 Etienne Payet

Unlearning in Large Language Models (LLMs) aims to enhance safety, mitigate biases, and comply with legal mandates, such as the right to be forgotten. However, existing unlearning methods are brittle: minor query modifications, such as…

Artificial Intelligence · Computer Science 2026-03-13 Raj Sanjay Shah , Jing Huang , Keerthiram Murugesan , Nathalie Baracaldo , Diyi Yang

We present an approach for implementing a formally certified loop-invariant code motion optimization by composing an unrolling pass and a formally certified yet efficient global subexpression elimination.This approach is lightweight: each…

Programming Languages · Computer Science 2021-05-05 David Monniaux , Cyril Six

Loop scopes have been shown to be a helpful tool in creating sound loop invariant rules which do not require program transformation of the loop body. Here we extend this idea from while-loops to for-loops and also present sound loop…

Programming Languages · Computer Science 2019-01-25 Nathan Wasser , Dominic Steinhöfel

Model checking is an established technique to formally verify automation systems which are required to be trusted. However, for sufficiently complex systems model checking becomes computationally infeasible. On the other hand, testing,…

Software Engineering · Computer Science 2019-07-30 Igor Buzhinsky , Valeriy Vyatkin

The growing use of deep neural networks in safety-critical applications makes it necessary to carry out adequate testing to detect and correct any incorrect behavior for corner case inputs before they can be actually used. Deep neural…

Software Engineering · Computer Science 2019-02-19 Jasmine Sekhon , Cody Fleming

While there are many approaches for automatically proving termination of term rewrite systems, up to now there exist only few techniques to disprove their termination automatically. Almost all of these techniques try to find loops, where…

Logic in Computer Science · Computer Science 2010-12-30 René Thiemann , Christian Sternagel , Jürgen Giesl , Peter Schneider-Kamp

We present a new algorithm for computing upper bounds on the number of executions of each program instruction during any single program run. The upper bounds are expressed as functions of program input values. The algorithm is primarily…

Programming Languages · Computer Science 2016-05-13 Pavel Čadek , Jan Strejček , Marek Trtík

In inverse problems we aim to reconstruct some underlying signal of interest from potentially corrupted and often ill-posed measurements. Classical optimization-based techniques proceed by optimizing a data consistency metric together with…

Image and Video Processing · Electrical Eng. & Systems 2022-10-17 Peimeng Guan , Jihui Jin , Justin Romberg , Mark A. Davenport

Invariants are the predominant approach to verify the correctness of loops. As an alternative, loop contracts, which make explicit the premise and conclusion of the underlying induction proof, can sometimes capture correctness conditions…

Logic in Computer Science · Computer Science 2021-10-13 Gidon Ernst

RRULES is presented as an improvement and optimization over RULES, a simple inductive learning algorithm for extracting IF-THEN rules from a set of training examples. RRULES optimizes the algorithm by implementing a more effective mechanism…

Machine Learning · Computer Science 2021-06-15 Rafel Palliser-Sans

As models are getting larger and are trained on increasing amounts of data, there has been an explosion of interest into how we can ``delete'' specific data points or behaviours from a trained model, after the fact. This goal has been…

Algorithm unrolling is ubiquitous in machine learning, particularly in hyperparameter optimization and meta-learning, where Jacobians of solution mappings are computed by differentiating through iterative algorithms. Although unrolling is…

Machine Learning · Computer Science 2026-02-24 Sheheryar Mehmood , Florian Knoll , Peter Ochs

Concolic testing is a popular software verification technique based on a combination of concrete and symbolic execution. Its main focus is finding bugs and generating test cases with the aim of maximizing code coverage. A previous approach…

Logic in Computer Science · Computer Science 2020-09-23 Fred Mesnard , Etienne Payet , German Vidal

As researchers, we already understand how to make testing more effective and efficient at finding bugs. However, as fuzzing (i.e., automated testing) becomes more widely adopted in practice, practitioners are asking: Which assurances does a…

Software Engineering · Computer Science 2018-12-18 Marcel Böhme

Background: Software systems powered by large language models are becoming a routine part of everyday technologies, supporting applications across a wide range of domains. In software engineering, many studies have focused on how LLMs…

Software Engineering · Computer Science 2025-08-05 Cleyton Magalhaes , Italo Santos , Brody Stuart-Verner , Ronnie de Souza Santos

Loop under-approximation is a technique that enriches C programs with additional branches that represent the effect of a (limited) range of loop iterations. While this technique can speed up the detection of bugs significantly, it…

Formal Languages and Automata Theory · Computer Science 2014-10-22 Daniel Kroening , Matt Lewis , Georg Weissenbacher

Metamorphic testing is a widely used methodology that examines an expected relation between pairs of executions to automatically find bugs, such as correctness bugs. We found that code coverage cannot accurately measure the extent to which…

Software Engineering · Computer Science 2025-08-25 Jinsheng Ba , Yuancheng Jiang , Manuel Rigger