Parallel Fact Inference System for RDF Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current semantic data models, such as RDF, face computational inefficiencies when inferring facts from large collections of triples due to the time-consuming process of applying rules, especially in multiprocessor environments.

Innovation Solution

A method and system for inferring facts in parallel by scheduling threads to apply rules to each existing fact, utilizing shared memory and processor architecture to manage new inferences, and employing preprocessing and indexing techniques to optimize processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If rules are applied to infer facts from large collections of triples using traditional sequential processing, then inference accuracy is maintained, but computational time and resource consumption increase significantly

Engineering Contradiction:
Improveinference accuracyVSAvoidcomputational time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent divides the large collection of triples into multiple partitions or chunks that can be processed independently in parallel. Each partition is assigned to a separate thread or processor, allowing simultaneous rule application across different data segments while maintaining the same inference accuracy as sequential processing would provide on the complete dataset.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from single-threaded sequential processing to multi-threaded parallel processing, adding a temporal dimension to the computation. By utilizing multiple processors executing simultaneously, the system reduces computational time while maintaining inference accuracy through coordinated processing of triple partitions.

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

2Productivity

If parallel processing is used to speed up fact inference, then computational efficiency improves, but system complexity and memory management challenges increase

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments both the data (triples) and the processing tasks (rule applications) into independent units that can be distributed across multiple processors. This segmentation enables parallel execution while keeping each processing unit relatively simple, managing system complexity through structured division of labor.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary structures such as partitioned data representations and coordination mechanisms that mediate between the parallel processing threads and the final inference results. These intermediaries manage memory access and result aggregation, reducing the direct complexity of coordinating multiple processors while maintaining computational efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If iterative rule application is performed to ensure complete fact inference, then inference completeness is improved, but processing time increases

Engineering Contradiction:
Improveinference completenessVSAvoidprocessing duration
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent implements iterative rule application as periodic cycles where rules are applied repeatedly to the triple collection in successive passes. Each iteration processes the current state of knowledge, and the cycle repeats until convergence or a predefined number of iterations, ensuring inference completeness while managing processing duration through controlled repetition.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent maintains continuous useful action by keeping all processors actively engaged in rule application throughout the iterative process. Rather than idle waiting periods, the system continuously processes triples and inferred facts across multiple iterations, maximizing computational resource utilization while achieving complete inference.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10296834B2Forward inferencing of facts in parallel
Publication Date: 2019.05.21 CRAY INC
  • US10296834B2 patent drawing
  • US10296834B2 patent drawing
  • US10296834B2 patent drawing

AI summary

A method and system for inferring facts in parallel in a multiprocessor computing environment is provided. An inference system infers facts by applying rules to a collection of existing facts. For each existing fact, the inference system schedules a thread to apply the rules to that existing fact. As a thread infers a new fact (i.e., one that is not already in the collection of facts), the thread adds that inferred fact to the collection of facts. When a thread adds a new fact to the collection, the thread also applies the rules to that new fact. After the threads complete execution, the inference system may apply the rules to the facts of the collection, including the newly inferred facts, by again launching a thread for each fact to apply the rules to that fact. The inference system performs this processing iteratively until a termination condition is satisfied.