EFFICIENT STORAGE AND SEARCH OF WORD LISTS AND OTHER TEXT
First Claim
Patent Images
1. A method for storing machine-readable digital data to facilitate expedited searching, comprising operations of:
- establishing a table having rows and columns;
in the table, storing machine-readable digital data comprising a plurality of words, each word residing in a different row and each letter of the word occupying a different column in that row, and where each contiguous run of same letters in a column forms an interval;
the storing operation including an act of establishing relative positioning of words in the table according to one of the following;
maximizing lengths of the intervals, optimizing efficiency of compression of the columns by run length encoding.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer readable storage medium tangibly embodying machine-readable digital data arranged to facilitate expedited searching. The data includes a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row. Each continuous run of same letters in a column forms an interval. The words are positioned relative to each other to maximize lengths of the intervals, and/or optimize efficiency of compression of the columns by run length encoding.
-
Citations
18 Claims
-
1. A method for storing machine-readable digital data to facilitate expedited searching, comprising operations of:
-
establishing a table having rows and columns;
in the table, storing machine-readable digital data comprising a plurality of words, each word residing in a different row and each letter of the word occupying a different column in that row, and where each contiguous run of same letters in a column forms an interval;
the storing operation including an act of establishing relative positioning of words in the table according to one of the following;
maximizing lengths of the intervals, optimizing efficiency of compression of the columns by run length encoding. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer readable data product manufactured by the following process:
-
establishing a table having rows and columns;
in the table, storing machine-readable digital data comprising a plurality of words, each word residing in a different row and each letter of the word occupying a different column in that row, and where each contiguous run of same letters in a column forms an interval;
the storing operation including an act of establishing relative positioning of words in the table according to one of the following;
maximizing lengths of the intervals, optimizing efficiency of compression of the columns by run length encoding.
-
-
8. An article of manufacture, comprising:
-
a computer readable storage medium tangibly embodying machine-readable digital data arranged to facilitate expedited searching;
the machine-readable digital data comprising;
a plurality of words, each word residing in a different row and each letter of the word occupying a different column in that row, and where each contiguous run of same letters in a column forms an interval;
where words in the table are relatively positioned according to one of the following;
maximizing lengths of the intervals, optimizing efficiency of compression of the columns by run length encoding.
-
-
9. A method for searching a body of machine-readable digital data including a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where each contiguous run of same letters in a column forms an interval, the method comprising:
-
receiving a given search word;
evaluating the search word against a prescribed body of words in the table, comprising operations of;
for each target word in the table to which the search word is being compared, comparing, one letter at a time, letters of the search word to corresponding columns of the target word in the table;
if a first prescribed number of letters do not match, skipping a number of rows ahead to where a next interval begins in the column where the non-match occurred, and reinitiating the comparing operation;
if a second prescribed number of letters match, providing an output representing a successful match;
upon evaluating the search word to the prescribed body of words in the table without finding a match, providing an output representing a failed match. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer readable storage medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus to perform operations of a body of machine-readable digital data including a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where each contiguous run of same letters in a column forms an interval, the operations comprising:
-
receiving a given search word;
evaluating the search word against a prescribed body of words in the table, comprising operations of;
for each target word in the table to which the search word is being compared, comparing, one letter at a time, letters of the search word to corresponding columns of the target word in the table;
if a first prescribed number of letters do not match, skipping a number of rows ahead to where a next interval begins in the column where the non-match occurred, and reinitiating the comparing operation;
if a second prescribed number of letters match, providing an output representing a successful match;
upon evaluating the search word to the prescribed body of words in the table without finding a match, providing an output representing a failed match.
-
-
16. Circuitry of multiple interconnected electrically conductive elements configured to perform operations of searching a body of machine-readable digital data including a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where each contiguous run of same letters in a column forms an interval, the operations comprising:
-
receiving a given search word;
evaluating the search word against a prescribed body of words in the table, comprising operations of;
for each target word in the table to which the search word is being compared, comparing, one letter at a time, letters of the search word to corresponding columns of the target word in the table;
if a first prescribed number of letters do not match, skipping a number of rows ahead to where a next interval begins in the column where the non-match occurred, and reinitiating the comparing operation;
if a second prescribed number of letters match, providing an output representing a successful match;
upon evaluating the search word to the prescribed body of words in the table without finding a match, providing an output representing a failed match.
-
-
17. A data processing apparatus, comprising:
-
a body of machine-readable digital data including a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where each contiguous run of same letters in a column forms an interval;
a manager programmed to search the table by performing operations comprising;
receiving a given search word;
evaluating the search word against a prescribed body of words in the table, comprising operations of;
for each target word in the table to which the search word is being compared, comparing, one letter at a time, letters of the search word to corresponding columns of the target word in the table;
if a first prescribed number of letters do not match, skipping a number of rows ahead to where a next interval begins in the column where the non-match occurred, and reinitiating the comparing operation;
if a second prescribed number of letters match, providing an output representing a successful match;
upon evaluating the search word to the prescribed body of words in the table without finding a match, providing an output representing a failed match.
-
-
18. A data processing apparatus, comprising:
-
first means for storing a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where each contiguous run of same letters in a column forms an interval;
second means for searching the first means by performing operations comprising;
receiving a given search word;
evaluating the search word against a prescribed body of words in the table, comprising operations of;
for each target word in the table to which the search word is being compared, comparing, one letter at a time, letters of the search word to corresponding columns of the target word in the table;
if a first prescribed number of letters do not match, skipping a number of rows ahead to where a next interval begins in the column where the non-match occurred, and reinitiating the comparing operation;
if a second prescribed number of letters match, providing an output representing a successful match;
upon evaluating the search word to the prescribed body of words in the table without finding a match, providing an output representing a failed match
-
Specification