Patent Document ID: 4882703
Application ID: 06941773

Base Claim:
1. A computer implemented method for processing words from a standard dictionary into a special dictionary by using a programmable digital computer system comprising the following steps: (a) inputting a word in upper case letters from the standard dictionary as a first of two string variables for use by the computer, creating a second such string variable from the first string variable by alphabetizing the letters in the first string variable and converting said letters to lower case, then appending the first string variable to the second string variable to provide a concatenated record and storing the result as one record in a different sequential disk file respectively created for each different length record, (b) repeating step a) for each different word of said standard dictionary. (c) placing the concatenated records in each sequential file in alphabetic order on disk media of the computer after input of such dictionary words is complete, (d) creating a corresponding random file for each sequential file in which the length of a record is equal to the length of the word so input from the standard dictionary in the sequential file, then reserving the first two words in each such random file for a finger index, (e) reading each sequential file, then writing both the lower and upper case words read to the corresponding random file, but if a succeeding record has the same lower case prefix as the one just written, then writing only the upper case word following the record just written, and (f) scanning the lower case words in each random file and storing the record number at which certain preselected letter prefixes change in a predetermined location of said first two words of the random file as a pointer or finger index.

---

Claim 3:
3. A computer implemented procedure for finding all words contained in any given word of the special dictionary created by the method according to claim 1 comprising the following steps: (a) inputting to the computer system in upper case letters a word and creating an anagram of such word by alphabetizing the letters in such word and converting those letters to lower case, thus creating an alphabetized lower case word constituting such anagram, (b) computing permutations of the letters in the anagram for successively decreasing lengths down to a selected minimum length, each length forming a respective group of juxtaposed letters, (c) comparing the permutations of juxtaposed letters for each specific word length to the lower case words in the random file for a record size equal to said specific word length from a starting point located by the finger index for the respective random file to the last permutation of letters so computed for the respective group of juxtaposed letters in search of a match, (d) taking the upper case words following any such match to the lower case permutation found in step c) up to the next lower case word and moving them to a solution queue, and, when all permutations of the letters in the alphabetized word have been searched, then (e) outputting the words in the solution queue in some readable form after optionally alphabetizing same.