Bit String Block Processing for Parentheses Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processing of specifying a bit position using a look-up table results in a large memory usage, which can lead to ineffective utilization of cache memory in processors.

Innovation Solution

An information processing system that divides a bit string into blocks, calculates local excess values, determines local minimum excess values, and specifies the position of a bit with a given excess value by analyzing the number of leading bits within the block, reducing memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a look-up table is used to specify bit position, then search speed is improved, but memory usage increases

Engineering Contradiction:
Improvesearch speedVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent divides the bit string into multiple blocks and calculates local excess values for each block separately. This segmentation allows the search to be performed on smaller data units, reducing the memory required for the look-up table while maintaining search efficiency through localized processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent computes local excess values for each block individually rather than maintaining a global look-up table for the entire bit string. This local quality approach reduces memory usage by only storing necessary local information while still enabling fast search through the use of excess value calculations.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If a large look-up table is used, then bit position specification accuracy is improved, but cache memory utilization deteriorates

Engineering Contradiction:
Improvebit position specification accuracyVSAvoidcache memory utilization
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

By segmenting the bit string into blocks and computing local excess values, the patent reduces the size of data that needs to be stored in cache memory. This segmentation maintains precision by ensuring that local excess values are accurately calculated for each block, enabling correct bit position specification without overwhelming the cache.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the essential local excess value information from each block rather than storing complete bit string data in the look-up table. This extraction maintains the accuracy needed for bit position specification while significantly reducing the memory footprint to fit within cache memory constraints.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10387492B2Information processing system, information processing method, and program
Publication Date: 2019.08.20 RAKUTEN GROUP INC
  • US10387492B2 patent drawing
  • US10387492B2 patent drawing
  • US10387492B2 patent drawing

AI summary

An information processing system divides the bit string indicating a search target parentheses string into a plurality of blocks, calculates a local excess value of an end bit in each block, calculates a local minimum excess value of each block, specifies a block including a bit with a given excess value, based on the local excess values of the end bits and the local minimum excess values, and specifies the position of a bit with the given excess value in the specified block. In specification of a bit position, the position of the bit with the given excess value corresponding to the predetermined number is determined, based on the number of bits with the value 1 among leading bits which are included in a bit string included in the specified block and of which number is a predetermined number and the given excess value.