public static FOLKnowledgeBase createLovesAnimalKnowledgeBase(
InferenceProcedure infp)
{
FOLKnowledgeBase kb = new FOLKnowledgeBase(DomainFactory
.lovesAnimalDomain(), infp);
kb
.tell("FORALL x (FORALL y (Animal(y) => Loves(x, y)) => EXISTS y Loves(y, x))");
kb
.tell("FORALL x (EXISTS y (Animal(y) AND Kills(x, y)) => FORALL z NOT(Loves(z, x)))");
kb.tell("FORALL x (Animal(x) => Loves(Jack, x))");
kb.tell("(Kills(Jack, Tuna) OR Kills(Curiosity, Tuna))");
kb.tell("Cat(Tuna)");
kb.tell("FORALL x (Cat(x) => Animal(x))");
return kb;
}