}
try
{
Configuration config = mainConfiguration.copy();
RPNIUniversalLearner l = new RPNIUniversalLearner(null,new LearnerEvaluationConfiguration(null,null,config,null,null));
config.setLearnerIdMode(Configuration.IDMode.POSITIVE_NEGATIVE);
l.init(plusStrings, minusStrings);
actualC = l.getTentativeAutomaton().pathroutines.getGraph();
}
catch(IllegalArgumentException e)
{
// ignore this - it might be expected.
eC = e;
}
try
{
Configuration config = mainConfiguration.copy();
RPNIUniversalLearner l = new RPNIUniversalLearner(null,new LearnerEvaluationConfiguration(null,null,config,null,null));
config.setLearnerIdMode(Configuration.IDMode.POSITIVE_NEGATIVE);
PTASequenceEngine engine = buildPTA(plusStrings, minusStrings);
checkPTAConsistency(engine, plusStrings, true);if (engine.numberOfLeafNodes()>0) checkPTAConsistency(engine, minusStrings, false);
l.init(engine,0,0);
actualD = l.getTentativeAutomaton().pathroutines.getGraph();
}
catch(IllegalArgumentException e)
{
// ignore this - it might be expected.
eD = e;
}
try
{
Configuration config = mainConfiguration.copy();
RPNIUniversalLearner l = new RPNIUniversalLearner(null,new LearnerEvaluationConfiguration(null,null,config,null,null));
config.setLearnerIdMode(Configuration.IDMode.POSITIVE_NEGATIVE);
l.init(buildPTA(plusStrings, buildSet(new String[][] {},config,converter)),0,0);
for(List<Label> seq:minusStrings)
{
Set<List<Label>> negativeSeq = new HashSet<List<Label>>();negativeSeq.add(seq);
l.getTentativeAutomaton().paths.augmentPTA(buildPTA(buildSet(new String[][] {},config,converter),negativeSeq));
}
actualE = l.getTentativeAutomaton().pathroutines.getGraph();
}
catch(IllegalArgumentException e)
{
// ignore this - it might be expected.
eE = e;
}
try
{
Configuration config = mainConfiguration.copy();
RPNIUniversalLearner l = new RPNIUniversalLearner(null,new LearnerEvaluationConfiguration(null,null,config,null,null));
config.setLearnerIdMode(Configuration.IDMode.POSITIVE_NEGATIVE);
l.getTentativeAutomaton().initPTA();
l.getTentativeAutomaton().paths.augmentPTA(minusStrings, false,true);
l.getTentativeAutomaton().paths.augmentPTA(plusStrings, true,true);
actualF = l.getTentativeAutomaton().pathroutines.getGraph();