False Path Pruner for Directed Acyclic Graph Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for analyzing directed acyclic graphs (DAGs) in software programs struggle to efficiently distinguish between valid and false paths, leading to excessive false positive results and potential misses of valid defects, due to the computational expense of detecting false paths.

Innovation Solution

A False Path Pruner (FPP) system that traverses DAGs concurrently with checkers, annotates nodes with traversal states derived from false path signatures, and uses cache hit/miss decisions to optimize path evaluation, thereby reducing false positives and improving defect detection efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional path analysis methods are used to detect false paths in DAGs, then measurement precision of path validity is improved, but loss of time and computational resources increases significantly

Engineering Contradiction:
Improvepath validity detection accuracyVSAvoidcomputational time for false path detection
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by maintaining traversal states at merge points that capture historical path information before complete path exploration. This allows the system to prepare state information in advance that can be quickly compared during subsequent traversals, avoiding the need to re-analyze entire paths and reducing computational time while maintaining detection accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts essential state information from complete path histories by maintaining condensed traversal states at merge points. Instead of storing and analyzing entire path histories, the system extracts key state variables and conditions that are sufficient for false path detection, significantly reducing the computational burden while preserving detection precision.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If comprehensive path analysis is performed to ensure no valid defects are missed, then reliability of defect detection is improved, but false positive results increase due to inability to distinguish false paths

Engineering Contradiction:
Improvedefect detection completenessVSAvoidfalse positive results
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The patent implements feedback mechanisms by comparing current traversal states with previously stored traversal states at merge points. When a mismatch is detected, it provides feedback that indicates a potential false path, allowing the system to adjust its analysis and avoid reporting false positives while maintaining comprehensive coverage for valid defects.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces traversal states as intermediary representations between complete path histories and defect detection decisions. These intermediate states serve as mediators that capture essential path information without requiring full path re-analysis, enabling reliable defect detection while filtering out false positives through state comparison.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If high-precision state information is maintained for all paths, then measurement precision of path differentiation is improved, but device complexity increases due to state management overhead

Engineering Contradiction:
Improvepath differentiation accuracyVSAvoidstate information management complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the graph into components with traversal states maintained only at merge points rather than for every node or complete path. This segmentation approach maintains high-precision state information where it is most needed for path differentiation while avoiding the complexity of managing states throughout the entire graph structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by maintaining detailed traversal states only at critical merge points where path differentiation is most important, rather than uniformly across all nodes. This localized approach preserves measurement precision for path differentiation while reducing device complexity by concentrating state management resources where they provide maximum benefit.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8762961B2Methods for selectively pruning false paths in graphs that use high-precision state information
Publication Date: 2014.06.24 BLACK DUCK SOFTWARE INC
  • US8762961B2 patent drawing
  • US8762961B2 patent drawing
  • US8762961B2 patent drawing

AI summary

Methods are provided that allow a false path pruner to traverse a directed acyclic graph in conjunction with one or more checker programs that are analyzing a program for defects or other artifacts of interest. While the checkers may have ways of avoiding re-traversal of portions of the graph that have already been traversed, the false path pruner may override such decisions made by the checkers as a result of a false path in order to allow re-traversal during a future different traversal when that same defect or artifact may not lie along a false path, and therefore avoid missing a valid defect or artifact. Computer programs stored on tangible media are provided that implement the methods of the invention.