鉴于我已将以下事实输入事实库。每一方都有两个要素:
maindish(thanksgiving, turkey).
sidedish(thanksgiving,pie).
ingredient(pie,spice).
ingredient(pie,sugar).
我已经写了以下规则来返回给定假期的菜肴:
meal(Holiday, [F1,F2]) :- maindish(Holiday,F1), sidedish(Holiday,F2).
?- meal(thanksgiving, Foods).
我正在尝试编写一个名为ingredientList
的规则,该规则将确定每个假期所需的成分类型。通过关联每个假期的菜肴和配料。
答案 0 :(得分:0)
ingredientlist(Holiday, Ingredients) :-
setof(Ingredient,
Dishes^Dish^ ( meal(Holiday,Dishes),
member(Dish, Dishes),
ingredient(Dish, Ingredient) ),
Ingredients).