public void train(DataSet ds) {
folDSDomain = new FOLDataSetDomain(ds.specification, trueGoalValue);
List<FOLExample> folExamples = new List<FOLExample>();
int egNo = 1;
foreach (Example e in ds.examples) {
folExamples.Add(new FOLExample(folDSDomain, e, egNo));
egNo++;
}
// Setup a KB to be used for learning
kb = new FOLKnowledgeBase(folDSDomain, new FOLOTTERLikeTheoremProver(
1000, false));
CurrentBestLearning cbl = new CurrentBestLearning(folDSDomain, kb);
currentBestHypothesis = cbl.currentBestLearning(folExamples);
}