Within Metamorph a "set" can be any one of four different types of text data:
There are three types of operations that can be used in conjunction with any set:
INCLUSION > The set must be present.
EXCLUSION > The set must not be present.
PERMUTATION > X out of Y sets must be present.
The set logic operations are performed within two boundaries:
Each type of set plays an important role in the real-world use of a text retrieval tool:
The Metamorph search engine will always optimize the search operations performed so that it will minimize the amount of CPU utilization and maximize the throughput search rate. At the heart of the Metamorph search engine lie seven of the most efficient pattern matchers there are for locating items within text. With the exception of the Approximate Pattern Matcher, all of these pattern matchers use a proprietary algorithmic technique that is guaranteed to out-perform any other published pattern matching algorithm (including those described by Boyer-Moore-Gosper and Knuth-Pratt-Morris).
Providing the user with set-logic to manipulate combinations of these set-types gives them the ability to search for just about anything that they might want to find in their textual information. The query tool in general can be as simple or sophisticated as the user wishes, with the simplest query being a simple natural-language question.