PROLOG -- 条目列表的逻辑基础

  • 本文关键字:列表 PROLOG prolog
  • 更新时间 :
  • 英文 :


PROLOG我有一个条目的逻辑基础(存储在内存中),我必须将其转换为条目列表。

例:

| ?- rule(A,B).
A = member(_h209,[_h209|_h212])
B = true;
A = member(_h209,[_h211|_h212])
B = member(_h209,_h212);

[member(_h209,[_h209|_h212]),true,member(_h209,[_h211|_h212]),member(_h209,_h212);]

任何人都可以让我知道我如何得到它。

接近预期结果的内容(末尾的分号除外)可以是:

rule_list(Rules) :-
     findall([A, B], rule(A, B), L),
     flatten(L, Rules).

关于_h209的说明,出现在成员的第一个位置:我不确定您是否知道这些符号的含义。这些是变量,如果你有兴趣保留这些表达的身份,我的建议是不正确的。在这种情况下使用袋子。

最新更新