BDD Transition Table for Fast XML Query Evaluation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The Binary Decision Diagrams (BDD) method for evaluating complex search queries in XML data requires excessive processing time due to the need to process each logical variable individually, leading to inefficiencies in query evaluation.

Innovation Solution

The method transforms the initial binary tree into a second binary tree that evaluates node transitions for every multiple bits, reducing the number of processing steps required by converting logical bit strings into a transition table that associates bit strings with node transitions, allowing for efficient decision-making.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the BDD method is used to evaluate complex search queries by processing each logical variable individually, then the search query can be evaluated, but the processing time increases excessively

Engineering Contradiction:
Improvesearch query evaluation accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent transforms the traditional BDD approach from processing logical variables one at a time to processing multiple bits simultaneously by introducing a transition table that maps bit strings to node transitions. This dimensional change from sequential variable processing to parallel bit processing reduces the number of processing steps while maintaining evaluation accuracy.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent pre-computes and stores transition tables that map bit strings to corresponding node transitions before actual query evaluation. This preliminary action allows the system to quickly determine node transitions during query evaluation without processing each logical variable individually, thereby reducing processing time while maintaining reliable evaluation results.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If a binary tree is transformed to evaluate node transitions for multiple bits, then processing time is reduced, but the complexity of the transition table increases

Engineering Contradiction:
Improveprocessing timeVSAvoidtransition table complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent merges multiple BDD nodes into a single transition table structure that handles multiple bits simultaneously. Instead of maintaining separate processing paths for each logical variable, the transition table combines all necessary transition information into a unified structure, reducing processing steps while managing complexity through systematic organization.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the representation parameters from individual logical variable states to bit string representations that encode multiple bits simultaneously. This parameter change allows the system to process multiple bits in parallel by looking up pre-computed transition tables, reducing processing time while the structured format of the tables manages complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8655921B2True/false decision method for deciding whether search query containing logical expression is true or false
Publication Date: 2014.02.18 FUJITSU LTD
  • US8655921B2 patent drawing
  • US8655921B2 patent drawing
  • US8655921B2 patent drawing

AI summary

When a searching apparatus accepts a search condition including a logical condition formed of variables, transition table is created by using a BDD method. In the transition table, a combination of a bit string indicative of true or false of a variable at each level for arriving from a starting-point variable to an arrival variable and the starting-point variable is associated with the arrival variable. Then, a true/false decision on the search condition of the search target data is made by, with an arrival variable of a transition destination being taken as the starting-point variable, extracting a bit string of a predetermined number of digits from the starting-point variable from among logical bit strings of the search target data and specifying the arrival variable as the transition destination based on the combination and the transition table.