gpt4 book ai didi

Prolog - 如何在 pl 文件中使用多个 pl 文件

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

我是 Prolog 的新手。我有两个文件。其中之一是“names.pl”,另一个是“verbs.pl”。这两个文件都有事实。 “names.pl”有关于很多名词等的事实。事实的名字是关系。

这些文件的模板:relation(notion_1,relation,notion_2)示例:

relation('accumulator','shape','rectangle').
relation('packing','shape','rectangle').
relation('gold','live / lifeless','lifeless').

我的问题是,如何在一个文件中使用这 2 个 pl 文件?如何将这些文件导入一个文件中?我如何使用/导入“verbs.pl”和“names.pl”在第三个文件中使用这个“关系”事实?

最佳答案

使用consult,因为你正在使用swi,所以你可以使用缩写形式。 SWI 自动将 .pl 附加到文件名。

% short form:
:- [verbs, names].

%longer form:
:- consult(varbs).
:- consult('names.pl').

如果您在两个文件中都有relation 事实,您可以使用include:

:-include('verbs.pl').
:-include('names.pl').

这两个假设您设置了第三个文件。

您还可以将谓词声明为 multifile,使用

:-multifile(relation/3).

那么 prolog 将不会覆盖之前定义的谓词的声明。

这是 documentation of SWI for loading and consulting .

关于Prolog - 如何在 pl 文件中使用多个 pl 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29832164/

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