Compact high speed hashed array for dictionary storage and lookup
First Claim
1. A control system for controlling a text processing machine to verify the presence of an input character string in a dictionary of character strings comprising:
- means for calculating a magnitude and angle representation for each of N dictionary character strings;
means for sorting said magnitude and angle representations into numerical order;
a memory buffer of 2N bit locations;
means for activating a binary bit of a first polarity in said memory buffer for each of the possible N magnitude representations;
means for calculating a modulo N value for each of the N magnitude representations;
means for activating a binary bit of a second polarity opposite said first polarity in said memory buffer adjacent each binary bit of said first polarity for each modulo N value calculated;
means for storing said angle representations corresponding to said calculated modulo N values;
means for receiving an input character string and calculating a magnitude and angle representation for said input character string;
means for calculating the modulo N value of the magnitude representation of said input character string;
means for scanning said memory buffer for binary bits of said second polarity adjacent said binary bit of said first polarity representing the modulo N value of the input character string magnitude representation;
means for synchronously scanning the corresponding angle representations;
means for comparing all angle representations corresponding to the binary bit of said second polarity adjacent the binary bit of said first polarity corresponding to the modulo N value of the input word to the input word angle representation; and
means for outputting a signal indicating whether the compare is equal or not equal.
1 Assignment
0 Petitions
Accused Products
Abstract
An improved method for storing and rapidly accessing a dictionary file of encoded data for use in verifying the correct spelling of input words. Dictionary words are numerically encoded and hashed into magnitude and unique angle pairs. The hashed pairs are sorted and the magnitudes are mapped into a pointer bit vector containing a binary representation for each possible magnitude value and a binary representation for each actual magnitude value. The pointer bit vector is coordinated with the angle values which are stored as is. The spelling of input words is checked by hashing the input word and using the magnitude as an access to the pointer bit vector which yields pointers to all angles having the same magnitude as the input word. These angles are compared to the angle calculated for the input word and an indicator produced to show the result of the comparison and thereby whether the input word is correctly spelled.
43 Citations
4 Claims
-
1. A control system for controlling a text processing machine to verify the presence of an input character string in a dictionary of character strings comprising:
-
means for calculating a magnitude and angle representation for each of N dictionary character strings; means for sorting said magnitude and angle representations into numerical order; a memory buffer of 2N bit locations; means for activating a binary bit of a first polarity in said memory buffer for each of the possible N magnitude representations; means for calculating a modulo N value for each of the N magnitude representations; means for activating a binary bit of a second polarity opposite said first polarity in said memory buffer adjacent each binary bit of said first polarity for each modulo N value calculated; means for storing said angle representations corresponding to said calculated modulo N values; means for receiving an input character string and calculating a magnitude and angle representation for said input character string; means for calculating the modulo N value of the magnitude representation of said input character string; means for scanning said memory buffer for binary bits of said second polarity adjacent said binary bit of said first polarity representing the modulo N value of the input character string magnitude representation; means for synchronously scanning the corresponding angle representations; means for comparing all angle representations corresponding to the binary bit of said second polarity adjacent the binary bit of said first polarity corresponding to the modulo N value of the input word to the input word angle representation; and means for outputting a signal indicating whether the compare is equal or not equal. - View Dependent Claims (2, 3, 4)
-
Specification