Comparing input words to a word dictionary for correct spelling
First Claim
1. In a text processing system including a mini-processor, a memory for storing instructions for controlling said mini-processor, and a dictionary memory for storing a representation for each word of a dictionary of correctly spelled words, apparatus for checking the spelling of input words by comparison to said dictionary of representations of correctly spelled words comprising:
- a source of input words connected to said mini-processordecode means connected to said mini-processor for converting each character of an input word into an output numerical representation;
a magnitude table storage means addressably connected to said decode means for outputting a magnitude value corresponding to each numerical representation output by said decode means;
a first adder means connected to said magnitude table storage means and said mini-processor for accumulating a magnitude sum of the magnitude values output by said magnitude table storage means and outputting said magnitude sum to said mini-processor for use as an address to access said dictionary memory;
a second adder means connected to said decode means for accumulating partial sums of said numerical representations output by said decode means;
binary table storage means connected to said second adder means for storing a plurality of binary numbers addressable to output one of said binary numbers for each partial sum accumulated by said second adder means;
third adder means connected to said binary table storage means for accumulating a modulo-2 sum of the output of said binary table storage means;
binary-to-decimal decode means connected to said third adder means and said mini-processor for converting the modulo-2 sum output of said third adder means from a binary number to a decimal angle value and outputting the result to said mini-processor;
means for comparing said decimal angle value to the contents of said dictionary memory at the accessed address;
means for indicating said input word is correctly spelled when said compare is equal; and
means for indicating said input word is not correctly spelled when said compare is unequal.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for vectorizing text words for compact storage and spelling verification in a mini-processor system without the use of complex mathematics functions. A binary storage table contains a plurality of addressable binary numbers. Each character in an input word is converted into a numerical weighting value. The numerical weighting values for the characters in a word are used to index into a magnitude weighting table. The selected magnitude weights are summed to produce a vector magnitude representation for the input word. The numerical weighting values are also used to cumulatively access the binary storage table. The values output from the binary storage table are modulo-2 added and accumulated to produce a vector angle representation for the input word. The calculated magnitude and angle values are used to compactly store a dictionary memory of correctly spelled words. Words subsequently input for spelling verification are similarly converted to vector magnitude and angle representations for comparison to the stored dictionary to determine if the input words are spelled correctly.
48 Citations
7 Claims
-
1. In a text processing system including a mini-processor, a memory for storing instructions for controlling said mini-processor, and a dictionary memory for storing a representation for each word of a dictionary of correctly spelled words, apparatus for checking the spelling of input words by comparison to said dictionary of representations of correctly spelled words comprising:
-
a source of input words connected to said mini-processor decode means connected to said mini-processor for converting each character of an input word into an output numerical representation; a magnitude table storage means addressably connected to said decode means for outputting a magnitude value corresponding to each numerical representation output by said decode means; a first adder means connected to said magnitude table storage means and said mini-processor for accumulating a magnitude sum of the magnitude values output by said magnitude table storage means and outputting said magnitude sum to said mini-processor for use as an address to access said dictionary memory; a second adder means connected to said decode means for accumulating partial sums of said numerical representations output by said decode means; binary table storage means connected to said second adder means for storing a plurality of binary numbers addressable to output one of said binary numbers for each partial sum accumulated by said second adder means; third adder means connected to said binary table storage means for accumulating a modulo-2 sum of the output of said binary table storage means; binary-to-decimal decode means connected to said third adder means and said mini-processor for converting the modulo-2 sum output of said third adder means from a binary number to a decimal angle value and outputting the result to said mini-processor; means for comparing said decimal angle value to the contents of said dictionary memory at the accessed address; means for indicating said input word is correctly spelled when said compare is equal; and means for indicating said input word is not correctly spelled when said compare is unequal. - View Dependent Claims (2)
-
-
3. In a text processing system including a mini-processor, a memory for storing instructions for controlling said mini-processor, and a dictionary memory for storing a representation for each text word of a dictionary of correctly spelled text words, apparatus for generating representations of input text words for comparison to said dictionary of correctly spelled words comprising:
-
a source of input text words; decode means connected to said mini-processor for converting each character of an input text word into a numerical representation; a magnitude table storage means addressably connected to said decode means for storing a magnitude value corresponding to each numerical representation output by said decode means; a first adder means connected to said magnitude table storage means and said mini-processor for accumulating a magnitude sum of the magnitude values output by said magnitude table storage means and outputting said magnitude sum to said mini-processor for use as an address to said dictionary memory; a second adder means connected to said decode means for accumulating partial sums of said numerical representations output by said decode means; binary table storage means for storing a plurality of binary numbers and addressable to output said binary numbers; register means connected to said mini-processor for receiving from said mini-processor and storing a value representing the size of said binary table storage means; compare means connected to said second adder means and said register means for comparing each accumulated partial sum to the binary table storage means size value; gate means connected to said binary table storage means and said second adder means and operable by said compare means for accessing said binary table storage means at the address equal to said accumulated partial sum for a binary number when the accumulated partial sum is less than said binary table storage means size value; third adder means connected to said binary table storage means for accumulating a modulo-2 sum of the binary numbers output by said binary table storage means; binary to decimal decode means connected to said third adder means, and said mini-processor for converting the modulo-2 sum output of said third adder means from a binary number to a decimal angle value and outputting the result to said mini-processor; means for comparing said decimal angle value to the contents of said dictionary memory at the accessed address; means for indicating said input word is correctly spelled when said compare is equal; and means for indicating said input word is not correctly spelled when said compare is unequal. - View Dependent Claims (4, 5)
-
-
6. A method for checking the spelling of each text word input to a digital computer system, including a mini-processor, by comparison to the contents of a dictionary memory, said method comprising the steps of:
-
(a) converting each character of an input text word to a numerical representation; (b) utilizing each said numerical representation to access a magnitude weighting table for a magnitude weight output; (c) summing the selected magnitude weight outputs to produce a numerical vector magnitude component for the input text word; (d) sequentially accumulating each said numerical representation to produce a partial sum; (e) accessing a binary storage device for an output binary number for each produced partial sum; (f) modulo-2 adding said output binary numbers to produce a modulo-2 sum; (g) converting the modulo-2 sum to a decimal vector angle component for the input text word; (h) inputting said vector magnitude and vector angle components in said mini-processor; (i) addressing said dictionary memory at an address equal to said vector magnitude; (j) comparing the contents of the dictionary memory at the address to said vector angle; (k) indicating said input word is correctly spelled when said compare is equal; and (1) indicating said input word is not correctly spelled when said compare is unequal. - View Dependent Claims (7)
-
Specification