Generate Derivational Variants, Recursively
- Short Description:
Recursively generate derivational variants.
- Full Description:
This is a more aggressive form of derivation generation. That is, return derivations of a derivation until there are no more, or until a cycle is detected.
When the -m flag is specified, the fact or rules that applied is reported along with the detail history of the mutations. The format are described as follows:
- |FACT|term for derivations|category|derivation|category|history|
- |RULE|term for derivations|derivation|match pattern|category|inflection|replace pattern|category|inflection|history|
In addition, the last field shows information on the categoryof derivation. "Noun/Adj" and "NotNounAdj" are used to represent if the derivation is from noun/adjective to adjective/noun and all other cases, respectively.
- Difference:
- The order of display derivations is different.
- The mutation information is different when -m option is used.
- The new version only displays derivations which are in Lvg.
- With chossing detail options -d, all paths of derivations can be traced in the new version.
- Features:
- Generate derivations recursively until there are no more or a cycle is detected.
- Symbol:
R
- Examples:
> lvg -f:R -m
medicine|medication|128|1|R|1|RULE|medic|medication|$|verb|base|ation$|noun|base|ddddd|NotNounAdj|
medicine|medic|128|1|R|1|RULE|medical|medic|al$|adj|base|$|noun|base|dd|NounAdj|
medicine|medically|2|1|R|1|RULE|medical|medically|$|adj|base|ly$|adv|base|dd|NotNounAdj|
medicine|medicinal|1|1|R|1|RULE|medicine|medicinal|e$|noun|base|al$|adj|base|d|NounAdj|
medicine|medicate|1024|1|R|1|RULE|medicable|medicate|able$|adj|base|ate$|verb|base|dddd|NotNounAdj|
medicine|medic|1024|1|R|1|RULE|medicable|medic|able$|adj|base|$|verb|base|dddd|NotNounAdj|
medicine|medicable|1|1|R|1|RULE|medic|medicable|$|noun|base|able$|adj|base|ddd|NounAdj|
medicine|medical|1|1|R|1|FACT|medicine|noun|medical|adj|d|NounAdj|
More examples
Implementation Logic:
- Generate derivations based on the input term.
- Generate derivations based on the generated derivations, repeatly.
- Check if the generated derivation is new, if so, add to output list.
- The check is on term and categoryonly. Inflection of all derivation are set to be base (1).
Source Code: ToRecursiveDerivations.java
Hierarchy: Object -> Transformation -> ToRecursiveDerivations