protected Collection getInverseArcs(Object member, Object symbol) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTargetAndInput(member, symbol); } return getUnminimizedFA().getArcsByInput(symbol); }
protected Collection getInverseArcs(Object member) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTarget(member); } return getUnminimizedFA().getArcs(); }
protected Collection getSymbols() { return getUnminimizedFA().getInputs(); }
protected void makeInitialBlocks() { // sink block (for if the automaton isn't complete makeBlock(Collections.singleton(SINK_NODE)); // accepting block Set endNodes = getUnminimizedFA().getEndNodes(); makeBlock(endNodes); // main block Collection nonFinalNodes = new HashSet(getUnminimizedFA().getNodes()); nonFinalNodes.removeAll(endNodes); makeBlock(nonFinalNodes); }
protected TransducerGraph buildMinimizedFA() { TransducerGraph minimizedFA = new TransducerGraph(); TransducerGraph unminimizedFA = getUnminimizedFA(); for (TransducerGraph.Arc arc : unminimizedFA.getArcs()) { Object source = projectNode(arc.getSourceNode()); Object target = projectNode(arc.getTargetNode()); try { if (minimizedFA.canAddArc(source, target, arc.getInput(), arc.getOutput())) { minimizedFA.addArc(source, target, arc.getInput(), arc.getOutput()); } } catch (Exception e) { //throw new IllegalArgumentException(); } } minimizedFA.setStartNode(projectNode(unminimizedFA.getStartNode())); for (Object o : unminimizedFA.getEndNodes()) { minimizedFA.setEndNode(projectNode(o)); } return minimizedFA; }
protected Collection getInverseArcs(Object member, Object symbol) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTargetAndInput(member, symbol); } return getUnminimizedFA().getArcsByInput(symbol); }
protected Collection getInverseArcs(Object member) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTarget(member); } return getUnminimizedFA().getArcs(); }
protected Collection getInverseArcs(Object member) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTarget(member); } return getUnminimizedFA().getArcs(); }
protected Collection getInverseArcs(Object member) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTarget(member); } return getUnminimizedFA().getArcs(); }
protected Collection getInverseArcs(Object member, Object symbol) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTargetAndInput(member, symbol); } return getUnminimizedFA().getArcsByInput(symbol); }
protected Collection getInverseArcs(Object member) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTarget(member); } return getUnminimizedFA().getArcs(); }
protected Collection getInverseArcs(Object member, Object symbol) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTargetAndInput(member, symbol); } return getUnminimizedFA().getArcsByInput(symbol); }
protected Collection getInverseArcs(Object member, Object symbol) { if (member != SINK_NODE) { return getUnminimizedFA().getArcsByTargetAndInput(member, symbol); } return getUnminimizedFA().getArcsByInput(symbol); }
protected Collection getSymbols() { return getUnminimizedFA().getInputs(); }
protected Collection getSymbols() { return getUnminimizedFA().getInputs(); }
protected Collection getSymbols() { return getUnminimizedFA().getInputs(); }
protected void makeInitialBlocks() { // sink block (for if the automaton isn't complete makeBlock(Collections.singleton(SINK_NODE)); // accepting block Set endNodes = getUnminimizedFA().getEndNodes(); makeBlock(endNodes); // main block Collection nonFinalNodes = new HashSet(getUnminimizedFA().getNodes()); nonFinalNodes.removeAll(endNodes); makeBlock(nonFinalNodes); }
protected void makeInitialBlocks() { // sink block (for if the automaton isn't complete makeBlock(Collections.singleton(SINK_NODE)); // accepting block Set endNodes = getUnminimizedFA().getEndNodes(); makeBlock(endNodes); // main block Collection nonFinalNodes = new HashSet(getUnminimizedFA().getNodes()); nonFinalNodes.removeAll(endNodes); makeBlock(nonFinalNodes); }
protected void makeInitialBlocks() { // sink block (for if the automaton isn't complete makeBlock(Collections.singleton(SINK_NODE)); // accepting block Set endNodes = getUnminimizedFA().getEndNodes(); makeBlock(endNodes); // main block Collection nonFinalNodes = new HashSet(getUnminimizedFA().getNodes()); nonFinalNodes.removeAll(endNodes); makeBlock(nonFinalNodes); }
protected void makeInitialBlocks() { // sink block (for if the automaton isn't complete makeBlock(Collections.singleton(SINK_NODE)); // accepting block Set endNodes = getUnminimizedFA().getEndNodes(); makeBlock(endNodes); // main block Collection nonFinalNodes = new HashSet(getUnminimizedFA().getNodes()); nonFinalNodes.removeAll(endNodes); makeBlock(nonFinalNodes); }