English
Related papers

Related papers: Error Invariants for Concurrent Traces

200 papers

Static analysers search for overapproximating proofs of safety commonly known as safety invariants. Fundamentally, such analysers summarise traces into sets of states, thus trading the ability to distinguish traces for computational…

Programming Languages · Computer Science 2015-03-19 Cristina David , Daniel Kroening , Matt Lewis

Software development is inherently incremental. Nowadays, many software companies adopt an agile process and a shorter release cycle, where software needs to be delivered faster with quality assurances. On the other hand, the majority of…

Software Engineering · Computer Science 2020-07-01 Ashwin Kallingal Joshy , Wei Le

Automated synthesis of inductive invariants is an important problem in software verification. Once all the invariants have been specified, software verification reduces to checking of verification conditions. Although static analyses to…

Machine Learning · Computer Science 2020-07-17 Sahil Bhatia , Saswat Padhi , Nagarajan Natarajan , Rahul Sharma , Prateek Jain

Fault injection is a technique to measure the robustness of a program to errors by introducing faults into the program under test. Following a fault injection experiment, Error Propagation Analysis (EPA) is deployed to understand how errors…

Software Engineering · Computer Science 2023-12-29 Stefan Winter , Abraham Chan , Habib Saissi , Karthik Pattabiraman , Neeraj Suri

This paper describes a formal general-purpose automated program repair (APR) framework based on the concept of program invariants. In the presented repair framework, the execution traces of a defected program are dynamically analyzed to…

Software Engineering · Computer Science 2024-01-30 Omar I. Al-Bataineh

Correctness of concurrent objects is defined in terms of safety properties such as linearizability, sequential consistency, and quiescent consistency, and progress properties such as wait-, lock-, and obstruction-freedom. These properties,…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-07 Brijesh Dongol , Lindsay Groves

One of the obstacles in automatic program proving is to obtain suitable loop invariants. The invariant of a loop is a weakened form of its postcondition (the loop's goal, also known as its contract); the present work takes advantage of this…

Software Engineering · Computer Science 2013-08-14 Carlo A. Furia , Bertrand Meyer

Trace theory is a principled framework for defining equivalence relations for concurrent program runs based on a commutativity relation over the set of atomic steps taken by individual program threads. Its simplicity, elegance, and…

Formal Languages and Automata Theory · Computer Science 2023-10-27 Azadeh Farzan , Umang Mathur

A loop invariant is a property of a loop that remains true before and after each execution of the loop. The identification of loop invariants is a critical step to support automated program safety assessment. Recent advancements in Large…

Software Engineering · Computer Science 2025-11-11 Mostafijur Rahman Akhond , Saikat Chakraborty , Gias Uddin

A program invariant is a property that holds for every execution of the program. Recent work suggest to infer likely-only invariants, via dynamic analysis. A likely invariant is a property that holds for some executions but is not…

Software Engineering · Computer Science 2007-05-23 Tristan Denmat , Arnaud Gotlieb , Mireille Ducasse

Concurrent programs are difficult to test due to their inherent non-determinism. To address this problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming when applied to real-world…

Software Engineering · Computer Science 2018-04-11 Tingting Yu , Wei Wen , Xue Han , Jane Hayes

Execution of concurrent programs implies frequent switching between different thread contexts. This property perplexes analyzing and reasoning about concurrent programs. Trace simplification is a technique that aims at alleviating this…

Software Engineering · Computer Science 2014-05-20 Mohamed A. El-Zawawy , Mohammad N. Alanazi

Embedded software is developed under the assumption that hardware execution is always correct. Fault attacks break and exploit that assumption. Through the careful introduction of targeted faults, an adversary modifies the control-flow or…

Cryptography and Security · Computer Science 2020-03-25 Bilgiday Yuce , Patrick Schaumont , Marc Witteman

Debugging of large software systems consisting of many processes accessing shared resources is a very difficult task. Many commercial systems record essential events during system execution for post-mortem analysis. However, the event…

Software Engineering · Computer Science 2007-05-23 Raymond Smith , Bogdan Korel

Concurrent Constraint Programming (CCP) is a declarative model for concurrency where agents interact by telling and asking constraints (pieces of information) in a shared store. Some previous works have developed (approximated) declarative…

Logic in Computer Science · Computer Science 2017-02-13 Moreno Falaschi , Maurizio Gabbrielli , Carlos Olarte , Catuscia Palamidessi

Preserving invariants while designing distributed applications under weak consistency models is difficult. The CEC (Correct Eventual Consistency Tool) is meant to aid the application designer in this task. It provides information about the…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-07-18 Sreeja Nair , Marc Shapiro

In this paper, a novel approach, Inforence, is proposed to isolate the suspicious codes that likely contain faults. Inforence employs a feature selection method, based on mutual information, to identify those bug-related statements that may…

Software Engineering · Computer Science 2017-12-12 Farid Feyzi , Saeed Parsa

Data replication is essential to ensure reliability, availability and fault-tolerance of massive distributed applications over large scale systems such as the Internet. However, these systems are prone to partitioning, which by Brewer's CAP…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-01-12 Matthieu Perrin , Achour Mostéfaoui , Claude Jard

Loop invariants play a central role in the verification of imperative programs. However, finding these invariants is often a difficult and time-consuming task for the programmer. We have previously shown how program transformation can be…

Logic in Computer Science · Computer Science 2017-08-25 G. W. Hamilton

The rise of transient faults in modern hardware requires system designers to consider errors occurring at runtime. Both hardware- and software-based error handling must be deployed to meet application reliability requirements. The level of…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-08-23 Björn Bönninghoff , Horst Schirmeier
‹ Prev 1 2 3 10 Next ›