A slot table contains (1) all possible sentence patterns (VPs), arranged in rows, which a predicate in an input sentence can take, and (2) arguments of the VPs expressed as slot conditions in slots positioned in a finite number of positions. A grammatical case pattern table contains columns corresponding to respective grammatical cases of the basic patterns arranged in the order in which the cases appear in a basic pattern before shifting; all the grammatical case patterns are expressed as binary values representing existing/non-existing ones of the respective grammatical cases in respective rows corresponding to the grammatical case patterns. The binary values are added up to numbers of the position information in the basic pattern, and the grammatical cases, which correspond to columns that correspond to the last number among numbers of the binary values, are treated as grammatical cases for arguments of the VP. One position on the slot table is selected with respect to candidates for arguments of VPs in the input sentence, and a candidate's features are compared with the slot conditions of all possible VPs in slots in the same position. Plural VPs are processed in parallel by recognizing as being appropriate only those VPs with slots whose slot conditions match the candidate's features, and only the grammatical cases that have been described in the slots of such recognized VPs are recognized as appropriate. Because a finite number of positions is set on the slot table, comparison of slot conditions, in positions other than the specific position, with candidate's features is unnecessary.
展开▼