EDIT: PrologFunctor replaced with PrologRule.