A Data Flow Analysis Framework for Data Flow Subsumption

01/15/2021
by   Marcos Lordello Chaim, et al.
0

Data flow testing creates test requirements as definition-use (DU) associations, where a definition is a program location that assigns a value to a variable and a use is a location where that value is accessed. Data flow testing is expensive, largely because of the number of test requirements. Luckily, many DU-associations are redundant in the sense that if one test requirement (e.g., node, edge, DU-association) is covered, other DU-associations are guaranteed to also be covered. This relationship is called subsumption. Thus, testers can save resources by only covering DU-associations that are not subsumed by other testing requirements. In this work, we formally describe the Data Flow Subsumption Framework (DSF) conceived to tackle the data flow subsumption problem. We show that DFS is a distributive data flow analysis framework which allows efficient iterative algorithms to find the Meet-Over-All-Paths (MOP) solution for DSF transfer functions. The MOP solution implies that the results at a point p are valid for all paths that reach p. We also present an algorithm, called Subsumption Algorithm (SA), that uses DSF transfer functions and iterative algorithms to find the local DU-associations-node subsumption; that is, the set of DU-associations that are covered whenever a node n is toured by a test. A proof of SA's correctness is presented and its complexity is analyzed.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/16/2017

A fix-point characterization of Herbrand equivalence of expressions in data flow frameworks

The problem of determining Herbrand equivalence of terms at each program...
research
09/22/2018

Minimum Number of Test Paths for Prime Path and other Structural Coverage Criteria

The software system under test can be modeled as a graph comprising of a...
research
08/03/2018

Data-Flow Guided Slicing

We propose a flow-insensitive analysis that prunes out portions of code ...
research
02/29/2020

ADF-GA: Data Flow Criterion Based Test Case Generation for Ethereum Smart Contracts

Testing is an important technique to improve the quality of Ethereum sma...
research
11/20/2020

CLIPPER: A Graph-Theoretic Framework for Robust Data Association

We present CLIPPER (Consistent LInking, Pruning, and Pairwise Error Rect...
research
06/07/2023

Invariant Causal Set Covering Machines

Rule-based models, such as decision trees, appeal to practitioners due t...
research
02/10/2021

Memory-Associated Differential Learning

Conventional Supervised Learning approaches focus on the mapping from in...

Please sign up or login with your details

Forgot password? Click here to reset