// uses subsumption correctly so that it exhausts
// its search space.
@Test
public void testExhaustsSearchSpace() {
// Taken from AIMA pg 679
FOLDomain domain = new FOLDomain();
domain.addPredicate("alternate");
domain.addPredicate("bar");
domain.addPredicate("fri_sat");
domain.addPredicate("hungry");
domain.addPredicate("patrons");
domain.addPredicate("price");
domain.addPredicate("raining");
domain.addPredicate("reservation");
domain.addPredicate("type");
domain.addPredicate("wait_estimate");
domain.addPredicate("will_wait");
domain.addConstant("Some");
domain.addConstant("Full");
domain.addConstant("French");
domain.addConstant("Thai");
domain.addConstant("Burger");
domain.addConstant("$");
domain.addConstant("_30_60");
domain.addConstant("X0");
FOLParser parser = new FOLParser(domain);
// The hypothesis
String c1 = "patrons(v,Some)";
String c2 = "patrons(v,Full) AND (hungry(v) AND type(v,French))";