Patent Publication Number: US-4096934-A

Title: Method and apparatus for reproducing desired ideographs

Description:
The present invention relates in general to a method and apparatus for typing Chinese ideographs and the more specifically relates to such a method and apparatus for use with a computer having a conventional input keyboard terminal. 
     Prior known devices for printing the Chinese characters have been complex because the basic spoken language is written in more than 10 thousand characters. Because of the large number of characters required to print the Chinese language it is apparent that a conventional typewriter as is used for the English language cannot be used to print the Chinese language since it would require in excess of 10 thousand keys with a single key for each word that is to be printed. The prior known devices have been limited by their inability to define a code using only knowledge which is normally acquired by the operator so that the code may be easily memorized and quickly used with little training to select any ideographic character from the entire list available for the language. 
     The transmission of telegrams illustrates the difficulty of having so many characters. One telegraphic system utilizes a code book which lists about 9 thousand characters and indexes each character with a 4 digit number whereby the 4 digit number is transmitted on a telegram with the telegram translated back to ideographic characters using the four digit number to find the corresponding characters in a vocabulary list at the receiving facility. The authors of telegrams are restricted to using those characters listed in the code book for it is obvious that a character which is not included cannot be transmitted. 
     One currently available typewriter includes trays of moveable type from which one character at a time is selected, struck against typewriter paper, and returned to its original storage position. The character selected is manipulated with a single selection lever which is moved over the tray of type. The major difficulty in using this typewriter is that it requires memorization of thousands of locations of type to be efficiently operated. Another currently available Chinese type setting machine utilizes a keyboard having 27 columns and 44 rows of keys each of which controls two characters to provide a vocabulary list containing 2,376 characters. This system has a one to one correspondence between the keys and a vocabulary list and therefore an operator must memorize the location of each character. 
     Another machine used for translating Chinese has all of the characters in the vocubulary list divided into two parts and the radicals which appear in the upper and lower parts of each character are used to define groups of characters all of which have these two parts in common. These groups are displayed optically, and the final selection is made by selection from a visual display. Thus, only three key strokes are required to identify any character in the vocubulary with two to display the group which includes the desired character and a third to select and print the character. This system is expensive and operators would require extensive training to become efficient because the indexing system is not based on common knowledge. 
     Another Chinese typewriter has been developed which is based on an indexing system which uses the sequence of standard brush strokes normally used in writing a character. The key sequence used to draw the strokes of the character is inputed digital computer which matches the sequence of strokes to the character in a vocabulary list. These machines usually require an optical output to resolve ambiguities and for final verification of the character selected since the typist might not be certain of the sequence of strokes required or may have made errors in keying the stroke sequence. 
     Mandarin is used by millions of Chinese who have no difficulty in understanding the spoken word and their speech may be recorded faithfully by use of a Chinese phonetic alphabet which is widely known. The Council on Unifying Chinese Pronunciation has promoted the use of the Chinese phonetic alphabet since 1932 when it published the first edition of a list of standard pronunciation of Chinese characters. 
     Unfortunately, indexing Chinese characters phonetically does not produce a unique character because Chinese characters have simple pronunciations with none of them being more than three phonemes long which makes homonyms much more common in Mandarin than in English. The Council on Unifying Chinese Pronunciation list of standard pronunciations contains a word list of approximately ten thousand characters arranged in approximately 1300 groups of homonyms. Phonetic indexing therefore leads only to unique identification of homonym groups. While these homonym groups could be viewed optically for final selection, this approach would be expensive and would result in greatly reduced typing speeds. 
     Mandarin is used by millions of Chinese who have no difficulty in understanding the spoken word. The ambiguity which exists when single words are heard does not exist in normal speech because phrases of words which identify the unique sequences of words from homonym groups are heard and understood. The Chinese phonetic alphabet as described above is used in many dictionaries and is commonly learned by school children. It is so widely used in teaching that a daily newspaper is printed in which the text is written in ideographs and phonetic symbols side by side. 
     These prior typewriting systems have been handicapped by their slow speeds and the difficulty inherent in training an operator to perform the necessary indexing for their use. 
     It is therefore the object of the present invention to provide a new and improved typewriter for ideographic characters. 
     Another object of the present invention is to provide an ideographic typewriter using a conventional keyboard to permit the unique typing of each desired ideograph with the minimum number of key strokes on the keyboard. 
     It is a further object of the present invention to provide a typewriter for ideographic characters which provides the best compromise between the conflicting demands of ease of learning, brevity of key stroke sequences, uniqueness, and psychological comfort. 
     A still further object of the present invention is to provide codings for ideographic characters which uniquely identify each ideograph, are easy to learn, are psychologically pleasing and are efficient to use while permitting some variations in phonetic coding according to pronunciations in different dialects. 
     A further object of the present invention is to provide an ideographic typewriter which is completely self-contained, including within it a small fixed program special purpose computing machine and printing mechanism, which can be operated in a touch typing mode using codings easily learned, without optical displays being needed to resolve ambiguities, and which in size and form resembles a conventional typewriter. 
     A further purpose of the present invention is to provide a typewriter for use in Chinese which is based on principles usually learned in school and always used in daily speech. 
     Another object of the present invention is to produce an ideographic typewriter which is fast, efficient and inexpensive thereby being of immeasurable importance to future developments in commerce, industry and government in the Far East. 
     Another object of the present invention is to provide a Chinese ideographic character typewriter for indexing thousands of characters so that they may be coded in efficient and easily learned methods for rapid selection from sequences of key strokes made on a simple keyboard without the necessity of having optical displays to resolve ambiquities. 
     Obtainment of the objects of this invention is based on the use of a completely phonetic indexing system to identify ideographs uniquely by means of spelling the pronunciation and/or using the phonetic symbols to describe geometry, either through simplified naming or descriptions of brush strokes, naming radicals or parts of characters, or suggesting meanings of the character described. 
    
    
     Other objects and advantages of the invention will become more apparent to those persons having ordinary skill in the art to which the present invention pertains from the following description taken in conjunction with the accompanying drawings wherein: 
     FIG. 1 is a perspective view of a system embodying the present invention; 
     FIG. 2 illustrates the standard Chinese phonetic symbols with corresponding international phonetic alphabet and approximate English equivalents; 
     FIGS. 3-1 and -2 illustrate examples of coding for brush strokes which resemble the phonetic symbols; 
     FIGS. 4-1 through -4 illustrate coding when the phonetic symbol is an abbreviation of the name of the brush stroke; 
     FIG. 5 illustrates the characters of the special category which are coded by a single key stroke; 
     FIG. 6 illustrates the pronouns which are coded phonetically; 
     FIG. 7 illustrates the coding of characters in the exceptional category; 
     FIG. 8 illustrates the optional coding for frequently used characters. 
     FIGS. 9-1 and -2 illustrate the nearly maximum possible optional coding list; 
     FIG. 10 illustrates the permissible variations in coding of the general and exceptional categories; 
     FIG. 11-1 through -25 illustrate the master coding list; 
     FIG. 12 is a diagrammatic view of the keyboard of the preferred embodiment of the present invention; 
     FIG. 13 illustrates the coding of symbols; 
     FIGS. 14-1 through -4 are the flow diagrams of the computer program for practicing the preferred method of the present invention; 
     FIG. 15 is a perspective view of a keyboard, input terminal and output printer of the preferred embodiment of the present invention; 
     FIG. 16 is a fragmentary perspective view of the paper roller and cylindrical typing head with x-y position indicator of the output printer shown in FIG. 16; 
     FIG. 17 is a fragmentary side elevation view of the cylindrical typing head and paper roller shown in FIG. 17; 
     FIG. 18 is a fragmentary end view of the paper roller and cylindrical typing head taken along line 18--18 in FIG. 17; 
     FIG. 19 is an enlarged fragmentary perspective view of portion of the cylindrical typing head shown in FIG. 18 with two type blocks partially exposed. 
    
    
     Referring first to FIG. 1 of the drawings there is illustrated a preferred embodiment for practice of the present invention, which includes a computer 30 such as an IBM 370-158 or much smaller general purpose computing machine. The computer is used in combination with an input terminal 32 with a keyboard 34 and an output printer 36. A special purpose internal computer may be provided if desired. In this case, the complete typewriter would appear as shown in FIG. 15. 
     To practice the present invention, all ideographs are coded using only the standard Chinese phonetic symbols. All words in Mandarin can be written phonetically using 37 different symbols with one of five tone marks to indicate the accents to be used in pronouncing them. The standard Chinese phonetic symbols are shown in FIG. 2 along with the corresponding international phonetic alphabet and approximate English equivalents. 
     Phonetic symbols are used in one or two sequences of from 1 to 3 symbols each. The first sequence is a coding of the pronunciation of the character according to the standard Peking dialect, without designation of tone marks. Because of the many homonym groups in which different characters have the same pronunciation, the use of phonetic coding by itself does not identify the characters uniquely. A second sequence of phonetic symbols is used to describe the geometry or descriptive characteristic of the characters to the extent necessary for unique identification. The two sequences of symbols are typed into the input terminal 32 through the keyboard 34, as shown in FIG. 12, without interruption and with the completion of the input for a single character signaled by striking the space bar. 
     Following are the rules for coding to produce sequences of key strokes which identify single characters so that such typing of Chinese characters is made possible in ways which make the coding unique enough to identify single ideographs, easy to learn, psychologically pleasing and efficient to use, yet permitting some variations in phonetic coding according to pronunciations in different dialects. 
     RULES FOR CODING 
     Every character is coded by a sequence of keystrokes using phonetic symbols only. All characters are divided into five categories for coding: (1) General, (2) Special, (3) Exceptional, (4) Optional, and (5) Neighboring Pronunciation categories. 
     (1) General Category 
     Most characters are in this category and are coded by typing two connected sequences of keystrokes. The first is the standard pronunciation of the character without any tone mark and the second is a coding of the geometry of the character using phonetic symbols only. 
     (a) All characters, except those which belong to the Special or Exceptional categories, are coded according to the following rules in the order of the steps given: 
     Step 1. The pronunciation of the character is coded using phonetic symbols without tone marks and using the standard Peking dialect. 
     Step 2. Immediately following the phonetic coding of Step 1, without a space or gap, the geometric shape of the brush stroke or strokes of the character is coded using phonetic symbols only in the order i) upper left corner, ii) upper right corner, iii) lower left corner, and iv) lower right corner. 
     Step 3. The coding for a given character is completed by using the space bar. This indicates that the coding for a given character has been completed, and that the next keystroke begins the coding of the next character is to be typed. 
     (b) After the phonetic sequence has been coded, the geometry of the brush strokes or radicals is coded using the following rules: 
     (i) If a brush stroke or a combination of brush strokes resembles the phonetic characters used on the keyboard, these phonetic characters are used as a coding in the geometric sequence (examples are shown in FIG. 3). 
     (ii) In other cases, the first phonetic symbol (consonants) or the last phonetic symbol (vowels) of the pronunciation of the name of the brush stroke or the combination of brush strokes is used (examples are shown in FIG. 4). 
     Note that in FIGS. 3 and 4 a standard brush stroke or strokes are followed by a sequence of derived, deformed, or related brush stroke shapes to form a subset of the system so that the typist can type the code efficiently without need of a detailed analysis of the structure of the character for which the identifying sequence is being typed. 
     (c) In order to achieve the highest efficiency, priorities are established in coding as follows: 
     (i) Coding a complicated combination of brush strokes has priority over coding a less complicated combination and coding a single brush stroke has the lowest priority in coding. 
     (ii) A brush stroke or a combination of brush strokes occurring in a character, except for characters containing the radical  is coded only once in the geometric coding. If a brush stroke or combination of brush strokes has been coded and occurs again in the corner currently being coded geometrically, it may not be used again, i.e., the corner currently being coded, if it is a duplication, is omitted. If it occurs again in another corner, it is again omitted. Examples are: ##SPC1## 
     (d) Except for symmetric strokes having the coding shown, all symmetric or almost symmetric characters or parts of a character are treated as follows: 
     (i) For symmetric characters of the type that the left part and the right part of a character are the same (although perhaps differing slightly according to the style used in handwriting) and the central part different, only the central core (i.e., the non-symmetric core portion) is to be coded. These characters have the general form  . Examples are: ##SPC2## 
     (ii) If a symmetric character has a central core which is not separable from the lower corners, only the central core is to be coded, i.e., if it has the shape  , only the part,  is used in the coding. This rule is also applicable to parts of a character, Examples are: ##SPC3## 
     (iii) If a character has a symmetric upper part, only the left upper corner of the central part is coded in place of coding both of the upper corners. Only one key stroke for the upper corners is used in coding, i.e., if a character looks like  , only one keystroke of the left upper corner of  is used. This rule is also used for coding parts of characters. Examples are: ##SPC4## 
     (iv) All symmetric characters without central cores are considered to be normal characters not coded by the rules of symmetry. Examples are: ##SPC5## 
     (V) Symmetric characters with identical parts not located in the corners to be coded are considered to be normal characters not coded by the rules of symmetry. Examples are: ##SPC6## 
     (e) If the entire character has a box-type boundary, the box is used for coding the upper corners, and the lower corners of the part contained in the box are used for the lower corners in coding. Examples are: ##SPC7## 
     Note that if a part of a character is contained in a box, the box is considered to be a combination of brush strokes, not as an entity. Examples of this are: ##SPC8## 
     In general the maximum number of key strokes for coding a character is six. Thus, if three phonetic symbols are used to code the pronunciation, only the phonetic symbols for the first three corners are used in the geometric coding. However, if the typist codes all four corners, the seventh keystroke will be ignored by the system. 
     (2) Special Category 
     (a) Characters coded by a single keystroke 
     The five most frequently used characters are coded by a single keystroke in order to maximize typing speed. The coding is partly phonetic, and partly geometric, as shown in FIG. 5. Note that when phonetic coding is used here, only the phonetic symbol of the leading phoneme is used. 
     The five characters shown in FIG. 5 must be coded as shown in the Figure. 
     (b) Frequently used characters which are coded phonetically only. 
     The characters which represent personal pronouns are coded phonetically only without the use of tone marks as shown in FIG. 6. 
     (3) Exceptional Category 
     In order to avoid uniqueness problems caused by conflicts in coding when the general rules are used, a few exceptional characters which have a low frequency of use are coded as follows: 
     i) The phonetic coding is done as usual. 
     ii) The geometry is coded by using the pronunciation of the name of the radical spelled phonetically without the tone mark, or in a few exceptional cases as given in FIG. 7. 
     (4) Optional Category 
     The machine is designed so that in addition to using the regular coding, phonetic coding only without tonemark designations can be used for coding the most frequently used characters, as given in FIG. 8. The characters in this table are arranged in order of decreasing frequency of usage. They have been selected from the most frequently used 300 characters. 
     Remarks on the Optional Category 
     All characters are indexed properly using the rules for coding given in the General, Special, and Exceptional Categories. The Optional and Neighboring Pronunciation Categories are additional codings which are provided to make the indexing faster at the option and convenience of the typist using them. As the typist becomes more familiar with the machine, his typing speeds will gradually increase because he is certain to increase the use of the shorter, optional codings provided. 
     A nearly maximum possible short coding list is given in FIG. 9. The characters in this figure are listed according to the standard order of the leading phonetic symbol with standard pronunciation required. 
     (5) Neighboring Pronunciation Category 
     The standard pronunciation of Chinese characters which is used in the phonetic coding of the characters is that of the Peking dialect; however, many Chinese people are accustomed to speaking their native dialects and do not ordinarily use perfect pronunciation even though they know the standard pronunciation. Certain inaccuracies are allowed in the phonetic coding of characters in order to make the coding comfortable and psychologically pleasing to more people. 
     Although standard pronunciation is required in the use of coding in the Optional Category, some variations in pronunciation of characters in both the General and Exceptional Categories are possible as shown in FIG. 10. 
     The Master Coding List 
     The master coding list is shown in FIG. 11. It is the coding which results when the coding rules discussed above are used with the standard pronunciation to code the basic characters or ideographs which can be typed by the system. 
     Although it is the list which the typist should refer to should questions of coding arise, it is not to be taken to be complete, for the list includes neither optional short codings nor neighboring sound codings, both of which are provided for in the logic of a translator in the computer 30 for the convenience of the typist. 
     It is clear that the list of FIG. 11 can be lengthened considerably without altering the rules for coding keystroke sequences in typing, the logic used for processing in the translator, or the basic design of the system. The optional codings provided for are not necessary, but will allow increased typing speeds as the typist becomes accustomed to and comfortable in his work. 
     The keyboard 34 for any typewriter or composing machine should be designed for efficiency and comfort of use. A good design for an efficient and comfortable keyboard is shown in FIG. 12 and is based on a weighted frequency account of written Mandarin coded according to the rules discussed above. The phonemes are shown located on a standard English keyboard. The spacing bar, some rarely used punctuation marks, and the special function keys are not shown. 
     TRANSLATOR 
     The preferred embodiment of the present invention is shown to include a general purpose computer since many large firms already have such computers for other purposes and could supply their office typing needs relatively inexpensively through use of the computer program to be described hereafter. A completely self-contained system can be produced if desired. 
     A computer program using general purpose time-sharing is described below. 
     COMPUTER PROGRAM FOR A TRANSLATOR USING A GENERAL PURPOSE COMPUTER 
     The input from the keyboard 34 on input terminal 32 to the translator in the computer 30 is the coded sequence of keystrokes typed to identify the character to be printed with each keystroke coded as shown in FIG. 13. Note that any standard coding, such as the ASC II code which is standard on keyboards which can now be purchased, can be substituted for that shown in FIG. 13 provided that the changes required to accommodate the coding of the keys are made in the program which receives the keystroke data as input. 
     A sequence of typed keystrokes thus forms a corresponding series of numbers which are processed arithmetically in the computing machine, a keystroke at a time to the extent possible. A keystroke sequence which has been typed is sent to a buffer memory in the translator. Within the translator, the sequence is used to identify a memory location in which the location or typing instructions are stored for the character identified. 
     In order to avoid searching the entire word list to find the sequence which matches that typed, the list has been divided into six major groups of words according to the number of keystrokes required to type the complete code for a single character. Each major group is divided into 37 subsets according to the leading phoneme (i.e. that of the first keystroke). Some subsets are empty because all phonemes do not occur in the leading position of a major group. 
     The number of keystrokes used for coding a given character is determined by counting the keystrokes up to the striking of the spacing bar, which indicates that the coding has been completed. This number is the group number to which the character belongs. 
     The search begins in this group at the subject of the phoneme of the leading keystroke. The keystroke sequence which has been typed is compared with each character of the subset. For efficiency in searching, the sequences stored in each subset are in descending order of use of the characters. The number of comparisons made in searching until a match is found is used to identify the sequence number of the character in the major group which contains the subset which was searched. 
     This sequence number locates a memory cell in which the x-y indices of the character&#39;s location in the printer 36 are stored and these indices are then sent to the printer. 
     If no correspondence between typed and stored keystroke sequences is found, possibilities for neighboring pronunciations are tested. If possible alternatives exist, further searches for comparisons are made. If none are found, either an error in typing has been made, or the character identified is not contained in the printer, and the typist is warned that this is the case. 
     A discussion of the flow charts shown in FIGS. 14-1 to 4 and a Fortran listing of a computer program for a translator using a general purpose computer follow. This program uses punched card inputs. In actual use of a general purpose computing machine for typing, however, the card input can be replaced by direct data input from the typewriter console 32. 
     Fig. 14-1: read in and Store 
     (a) This reads in and stores the list of symbols used with 61 being the maximum possible number using an IBM keypunch. The symbols listed in FIG. 13 are included. 
     (b) There are six groups in the master list. N1 is the number of members of the group of characters and punctuation marks which can be coded using only one keystroke. 
     (c) This reads in the locations of each of the members of the group in the type font, the single keystroke coding used to identify the member, and the sequence number of the member on the main list. The numbers IL1 (1,I) and IL1 (2,I) are the x and y indices, respectively, of the location in the type font of the Ith character in the first major group. A1(I) is the coding for the Ith member of the first major group. IL1 (3,I) is the sequence number of the character on the master list. 
     (d) J is an index number which defines the major group number. J runs from 2 to 6. 
     (e) This functions for group 2 as b) for group 1. 
     (f) For efficiency, the search is made in the major group identified by the number of keystrokes used in coding in the single subset identified by the leading phoneme of the coding. This subset is located by specifying the first and last sequence numbers of the characters of the major group which are contained in the subset. The sequence numbers of the leading characters in the second major group are identified by the numbers IS(K,2), where K is the phoneme sequence number, and 2 the major group number. For example, if K=5, the search starts at sequence number IS(5,2) and ends at (IS (6,2) - 1). Because differences are taken to determine the range to be searched, 38 numbers are required for each major group. If the differences IS (K+1,2) - IS (K,2) = 0, the Kth subset is empty. 
     (g) This reads the coding keystrokes, printer location indices, and master list sequence numbers into the memory. The master sequence numbers are not necessary for the functioning of the translator program. They are included here only for checking accuracy in experiments and machine construction. In the definition of A2(I,K), A stands for alpha-numeric, 2 for the second major group, I for the keystroke number (in group 2, I = 1 is the first keystroke, I = 2, the second), and K is the sequence number of the character in the second major group. In the definition of IL2(I,K), I stands for indices, L for location, 2 designates major group 2, I=1 refers to the x index, I = 2 to the y index, and I = 3 to the sequence number of the master list. K is defined as for A in the preceding sentences. 
     (h) This repeats reading the data into the memory for each major group in turn. 
     The explanations of items e 3 ), e 4 ), e 5 ) and e 6 ) for the various major groups are similar to those given for e) which were given for major group 2. Items f i ) and g i ) are treated similarly. 
     (i) TKY1(I), TKY2(I), and TKY2(I) are possible changes which could be made in the keystroke sequence typed according to the permissible variations in coding. See the Neighboring Pronunciation Category under the coding rules discussed earlier. In the designation TKY1(I), I is the phoneme sequence number and the number 1 means the first keystroke typed. This 1 could be a 2 or 3, in which case reference is made to the second or third keystrokes typed. Phonemes for which substitution is not possible according to FIG. 10 are redefined as themselves in this step. (i.e. the transformations TKY1(I), etc., are identity transformations in this case). 
     Fig. 14-2: manual Entry of Keystroke Coding Messeges 
     (a) KEY(1) is the entry of the first keystroke typed. The control number KKH = 0 means that no neighboring pronunciation alternatives have been searched. 
     (b) The machine identifies the set to which the keystroke just typed belongs. The symbols are defined as follows: E means belongs to, PH means the set of phonemes, CR means the correcting key, CL means the clear key, SP means the set of punctuation marks, and SF the set of special function keys. See FIG. 13. Because the one keystroke coding includes coding for punctuation marks and special function keys as well as the phonemes used for coding characters, it is treated separately from the multistroke coding sequences. 
     (c) The special functions include correcting, clearing, back space, skip a space, change a line, repeat a character, etc. See FIG. 13. 
     (d) A warning is given if the keystroke sequence typed to this point is logically impossible. 
     (e) If the keystroke typed is the spacing bar, the coding for the character has been completed, and the completed keystroke sequence goes to the searched part of the program. For the one keystroke major group this is 501. 
     The main features explained above for the first keystroke apply in turn to the second through the eighth keystrokes as shown on the flow chart. 
     The maximum number of keystrokes is eight even though a maximum of seven keystrokes including the spacing bar is all that is required. If an eighth keystroke is typed and it is not the spacing bar, a mistake has been made in typing, and a warning is given. If the eighth keystroke was the spacing bar, the seventh keystroke is replaced by the spacing bar stroke before the search is made. 
     500 indicates how the search is directed into one of the major groups 2 through 6 according to the calculated GO TO statement. (Recall that the search in group 1 is directed to 501 in e) above. 
     (f) ID(KEY (1)) identifies the subset sequence number according to the sequence number of the phoneme of the first keystroke. 
     (g) This defines the range to be searched in the major group selected. 
     (h) This defines the initial value for I. This number is the order number of the first member of the subset to be searched in the major group of interest. 
     (i) The computed GO TO statement directs the search to the major group identified by II. 
     Fig. 14-3: search and Print 
     Searches made in the various major groups are similar to each other. They proceed by comparing, a keystroke at a time, the keystroke sequence which has been typed in the coding sequence stored in the memory for each character on the master list. 
     For efficiency in searching major groups 2 through 6, the search is made in the major group which corresponds to the number of keystrokes used in coding a character, only within the subset identified by the first keystroke of the sequence. Comparisons within this subset are made from the second keystroke on. 
     Explanatory remarks are made for major group 3 only. Entry is identified by 503. Here the third digit, 3, refers to major group 3, which is the 3 keystroke group. 
     (a) The subset being searched has been selected using the first keystroke. Comparison begins at the second keystroke. KEY(2) = A3 (2,I) compares the second stroke typed to the second keystroke of the coding which was stored in the memory for the Ith member of the 3rd major group. Note that the Ith member lies in the proper subset. For T, if the second keystroke matches the code, the third keystroke is compared. For F, if the second keystroke doesn&#39;t match, the coding of the second keystroke of the next character in the sequence stored is compared. 
     (b) The third keystroke is compared. 
     (c) If all keystrokes as typed match those stored, the character typed has been identified as the Ith member in the major group 3. The location indices IL3(1,I) and IL3(2,I), which identify the location of the character in the printer 36, are sent to the printer so that the character will be printed. 
     The input of the keystroke sequence for the next character starts. See FIG. 14-2. 
     (d) If the current comparison fails, the index number I is increased by one so that the coding of the next member of the major group can be selected for comparison. 
     (e) If the increased index belongs to the range being searched, a new comparison is made. If the increased index number exceeds the range being searched, the whole list has been examined, and no character has been found for the keystroke sequence just typed. In this case, either the keystroke sequence typed is for a character not included in the type font, or a mistake in typing exists. If the group number II is greater than or equal to 3, neighboring pronunciation is possible, and the search is directed to 550. 
     Fig. 14-4: the Search Using Neighboring Pronunciation 
     (a) KKH = KKH + 1. This control number indicates the number of the trial search according to various neighboring sounds. 
     (b) Branches are made according to the KKH control number. 
     (c) KKH = 1. Is KEY(1) = TKY1(KEY(1)) ? This test is to see if the neighboring sound alternative for keystroke one is itself. For T, if it is, no change in this keystroke can be made, go back to 550. For F, a substitution is possible for keystroke 1, GO TO d). 
     (d) Keystroke 1 is replaced by its possible alternative. 500 is the beginning of the search of FIG. 14-3. 
     (e) KKH = 2. This asks if the number of keystrokes typed is less than 4. If it is true, no change can be made. 999 gives a warning. If there are more than 3 keystrokes, the possibility of substitution for the second keystroke is examined. 
     (f) This asks if there is a possible alternative for keystroke 2. If the neighboring sound alternative is itself, no change can be made, and the search goes back to 550. If an alternative is possible, the substitution is made. 
     (g) Keystroke 2 is replaced by its possible alternative, and the search is redirected to 500. 
     (h) KKH = 3. This switches keystroke 1 back to its original stroke, while leaving the second keystroke in its altered form. Another search is made. 
     (i) KKH = 4. First, a number of keystrokes is checked. If there are fewer than 5, a warning is given. If there are more than 4, the possibilities for changing the third keystroke while leaving the first two unchanged are examined. 
     (j) This asks (as in c) and f)) if a change is possible. If it is, go on. 
     (k) This changes keystroke 2 back to its origianl stroke, but changes keystroke 3 to its alternative, and goes back to search 500. 
     (m) KKH = 5. This asks if a possible alternative exists for the first keystroke. If not, a warning is given. If so, go on. In this case, the possibilities for changing the first and third keystrokes while leaving the second keystroke as originally typed are examined. 
     (n) The possible alternative for keystroke 1 is substituted, and the search is renewed. 
     A Fortran program based on Flow Charts in FIGS. 14-1 to 4 and using IBM punched cards as the input medium follows: ##SPC9## ##SPC10## 
     The input could be direct from a typewriter console, from magnetic tape previously coded by typing keystroke sequences, or from punched paper tapes prepared by a Flexowriter or similar machine. 
     PRINTER 
     The input to the printer 36 from the computer 30 is the binary coded x-y location of the character to be printed. This coding can be used to position a rectangular flat, cylindrical or belted array of type so that the character selected is located below the place on the paper which is to be typed. A hammer mechanism can then strike the type to force it to print the image by transferring ink from a ribbon to the paper in the usual manner. Additionally, a printer such as that shown in U.S. Pat. No. 3,820,644 to Chan-Hue Yeh which converts a digitalized character to 120 hexadecimal digit code units may be utilized. 
     An example of a printer which may be utilized with the present system is shown in FIGS. 16 through 19. 
     The output printer 36 as shown in FIGS. 15 through 19 is integral with the input terminal 32 and keyboard 34. A conventional moving electrical carriage 38 includes a paper roller 40, a spacer lever 42 and manual advance knobs 44. Control of the carriage position is achieved by the conventional control keys on the keyboard 34. The paper roller 40 is of conventional rubber construction having a support shaft 46 as shown in FIGS. 17 and 18. A typewriter ribbon 48 passes below the paper roller 40 to permit imprinting a character onto a sheet of paper 50 which is being transported by the carriage 38 in the manner of conventional typewriters. 
     A typing head assembly 52 provides the desired ideograph and positions it under the typing location at the intersection of the paper roller 40 and a cylindrical typing head 54 which has angularly spaced apart rows of ideograph image blocks 56 embedded therein. A hollow stationary support shaft 58 permits the cylindrical typing head 54 to translate and rotate under the paper roller 40 as indicated in FIGS. 16, 17 and 18. The cylindrical typing head 54 is formed of a relatively flexible elastomeric material such as polyvinyl or a silicone rubber and is mounted at its opposite end on support flanges 60 with bores 62 as shown in FIG. 17 to provide a bearing surface which slides back and forth and rotates on the stationary shaft 58. 
     Driven gears 64 are fixed to the support flanges 60 and are positioned by driving gears 66 mounted on rotatable shaft 68. A longitudinal slot 70 on the outer surface of the rotatable shaft permits splines 72 on the driving gears 66 as shown in FIG. 17 to be translated axially along the shaft while causing the driving gears to rotate with the shaft. Translation of the driving gears along the rotatable shaft 68 is caused by a carrier 74 having clips 76 mounted at the ends thereof and having arms 78 which extend along opposite sides of the driving gears to cause the driving gears to translate as the carrier is translated. 
     A conventional x-y position indicator 80 rotates the rotatable shaft 68 to the desired position in accordance with a binary input from the computer 30 through lead-in wires 82 and translates the carrier 74 with a continuous flexible ribbon 84 which is fixed to the carrier by a set screw 86 shown in FIGS. 17 and 18. The flexible ribbon 84 is translated to the desired position by a binary input from the computer 30. 
     As shown in FIG. 19, the ideograph blocks 56 are generally square and have the desired ideograph type 88 on their upper surfaces which can be positioned under the paper 50 on which the image is desired by rotation and translation of the cylindrical typing head 54. The ideograph blocks are retained in the cylindrical typing head by friction or adhesives and are pressed against the typing ribbon 48 by a plunger 90 when a solenoid 92 is actuated after the desired type is positioned as shown in FIG. 17. The flexibility of the cylindrical typing head 54 permits the individual type to be pressed against the paper without causing any of the adjacent type to strike the paper. The ideograph blocks may be formed of metalized plastic or light metal type to reduce the inertia of the system and increase the typing speed of the machine. 
     The x-y position indicator 80 may include two binary digit locators which receive a twelve binary bit from the computer 30 and through appropriate gearing drive the rotatable shaft 68 to the desired angular position and drive the continuous flexible ribbon 84 to its desired axial position thereby positioning the desired ideograph in the typing position where the plunger 90 may strike the back of the ideograph block to force it against the paper 50. 
     The operation of the printer includes placing the sheet of paper 50 in the carriage 38 in the normal fashion. Printing will, however, occur on the bottom of the roller rather than on the front as on a conventional typewriter. A sequence of keystrokes is typed on keyboard 34 as described earlier to identify the desired ideographic character uniquely. When this has been achieved, the computer 30 will provide a binary signal to the x-y position indicator 80 which will rotate the rotatable shaft 68 to the column of type containing the desired character and will translate the flexible ribbon 84 to move the carrier 74 and therefore the cylindrical type head until the type containing the desired character is positioned in the typing position over the plunger 90. The solenoid 92 is then actuated to force the desired ideograph block 56 against the ribbon 48 thereby imprinting the paper 50 with the desired character. The characters are typed on their sides from left to right; therefore, when the paper has been removed, they will read from top to bottom, right to left. After the desired characters have been typed, the paper may be removed from the typewriter. 
     From the foregoing detailed description, it will be evident that there are a number of changes, adaptations and modifications of the present invention which will come within the providence of those skilled in the art. However, it is intended that all such variations not departing from the spirit of the invention be considered as within the scope thereof and as limited solely by the appended claims.