org.egothor.stemmer
Class Lift

java.lang.Object
  extended by org.egothor.stemmer.Reduce
      extended by org.egothor.stemmer.Lift

public class Lift
extends Reduce

The Lift class is a data structure that is a variation of a Patricia trie.

Lift's raison d'etre is to implement reduction of the trie via the Lift-Up method., which makes the data structure less liable to overstemming.


Constructor Summary
Lift(boolean changeSkip)
          Constructor for the Lift object.
 
Method Summary
 void liftUp(Row in, List<Row> nodes)
          Reduce the trie using Lift-Up reduction.
 Trie optimize(Trie orig)
          Optimize (eliminate rows with no content) the given Trie and return the reduced Trie.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Lift

public Lift(boolean changeSkip)
Constructor for the Lift object.

Parameters:
changeSkip - when set to true, comparison of two Cells takes a skip command into account
Method Detail

optimize

public Trie optimize(Trie orig)
Optimize (eliminate rows with no content) the given Trie and return the reduced Trie.

Overrides:
optimize in class Reduce
Parameters:
orig - the Trie to optimized
Returns:
the reduced Trie

liftUp

public void liftUp(Row in,
                   List<Row> nodes)
Reduce the trie using Lift-Up reduction.

The Lift-Up reduction propagates all leaf-values (patch commands), where possible, to higher levels which are closer to the root of the trie.

Parameters:
in - the Row to consider when optimizing
nodes - contains the patch commands