gpt4 book ai didi

Prolog:获取原子列表

转载 作者:行者123 更新时间:2023-12-02 11:36:45 25 4
gpt4 key购买 nike

我有一组这样的事实:

person(tj, 'Tom James', house).
person(jj, 'Jim Jones', hut).
person(aw, 'Alex Wolf', boat).
person(jw, 'John Wolf', boat).

我想获得他们可以居住的地方的列表:

[boat, house, hut].

我尝试过 setof:

placeList(Places) :- setof(Place, person(_, _, Place), Places).

但我一次只能获取每个地点而不是列表。我也尝试过 findall,但这会重复船,而且不会按标准顺序。有人能指出我哪里出错了吗?谢谢。

最佳答案

您必须明确量化:向变量添加存在约束

placeList(Places) :- setof(Place, K^N^person(K, N, Place), Places).

关于Prolog:获取原子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19999229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com