In a system for identifying documents in a first database likely to match a search query defining the composition of the text of documents sought to be identified, said system including computer means and a read only memory arranged in an inference network forming a query network and a document network, said document network comprising the first database containing a plurality of terms representing the text of each of a plurality of documents, each term being represented by a node, said computer means having first compare means for comparing each term, i, of the search query, c, to each of the nodes of each document, j, in said first database, first processing means for determining the probability that the individual term of the search query, c.sub.i, is a correct descriptor of the document, j, in accordance with the following relationship
- P(c.sub.i .vertline.d.sub.j)=0.4+0.6.multidot.idf.sub.i .multidot.tf.sub.ij,
- where idf.sub.i is based on the frequency of documents in the entire collection of documents in the first database containing the term i, and tf.sub.ij is based on the frequency with which the term, i, appears in the respective document, j, adding means for adding the probabilities determined by said first processing means for each term of the search query for each document in said first database, normalizing means responsive to said adding means for normalizing the sums of probabilities that the terms of the search query are correct descriptors of the document by the number of terms in the search query, and ranking means responsive to said normalizing means for ranking the documents in said first database in accordance with the values of the normalized sums of probabilities, the improvement of the query network comprising:
- a) a second database recorded on said read only memory, said second database containing a plurality of phrases derived from domain specific natural-language phrases each consisting of a plurality of stemmed terms in original order,
- b) input means connected to said computer means to input an input query to said computer means, the input query being composed in natural language and comprising a plurality of unstemmed words arranged in a user-selected order,
- c) said computer means including
- i) parse means for parsing said input query into separate terms,
- ii) stem means responsive to said input means for stemming each term of said input query to form an ordered sequence of stemmed terms for a search query, the order of the stemmed terms being the same as the order of the unstemmed terms in the input query,
- iii) selecting means for selecting groups of stemmed terms, each group consisting of a plurality of successive stemmed terms of the sequence,
- iv) second compare means for comparing each group of stemmed terms to each phrase i said second database and for identifying each group of stemmed terms that matches a phrase in said second database, and
- v) substitution means responsive to said second compare means for replacing each identified group of stemmed terms from said sequence by the matched phrase to form a search query, c, comprising a plurality of terms, i, each term i consisting of a phrase substituted for a group of stemmed terms in the input query or of stemmed terms in the input query not substituted by phrases.