edu.stanford.nlp.fsm
Class FastExactAutomatonMinimizer
java.lang.Object
edu.stanford.nlp.fsm.FastExactAutomatonMinimizer
- All Implemented Interfaces:
- AutomatonMinimizer
public class FastExactAutomatonMinimizer
- extends java.lang.Object
- implements AutomatonMinimizer
Minimization in n log n a la Hopcroft.
- Author:
- Dan Klein (klein@cs.stanford.edu)
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FastExactAutomatonMinimizer
public FastExactAutomatonMinimizer()
getUnminimizedFA
protected TransducerGraph getUnminimizedFA()
getSymbols
protected java.util.Collection getSymbols()
minimizeFA
public TransducerGraph minimizeFA(TransducerGraph unminimizedFA)
- Specified by:
minimizeFA
in interface AutomatonMinimizer
buildMinimizedFA
protected TransducerGraph buildMinimizedFA()
projectNode
protected java.lang.Object projectNode(java.lang.Object node)
hasSplit
protected boolean hasSplit()
getSplit
protected edu.stanford.nlp.fsm.FastExactAutomatonMinimizer.Split getSplit()
addSplit
protected void addSplit(edu.stanford.nlp.fsm.FastExactAutomatonMinimizer.Split split)
sortIntoBlocks
protected java.util.Map sortIntoBlocks(java.util.Collection nodes)
makeBlock
protected void makeBlock(java.util.Collection members)
addSplits
protected void addSplits(edu.stanford.nlp.fsm.FastExactAutomatonMinimizer.Block block)
removeAll
protected void removeAll(java.util.Collection block,
java.util.Collection members)
difference
protected java.util.Collection difference(java.util.Collection block,
java.util.Collection members)
getBlock
protected edu.stanford.nlp.fsm.FastExactAutomatonMinimizer.Block getBlock(java.lang.Object o)
getInverseImages
protected java.util.Collection getInverseImages(edu.stanford.nlp.fsm.FastExactAutomatonMinimizer.Split split)
getInverseArcs
protected java.util.Collection getInverseArcs(java.lang.Object member,
java.lang.Object symbol)
getInverseArcs
protected java.util.Collection getInverseArcs(java.lang.Object member)
makeInitialBlocks
protected void makeInitialBlocks()
minimize
protected void minimize()
main
public static void main(java.lang.String[] args)
Stanford NLP Group