我有一个动态谓词
:- dynamic example/1.
让我们说,我决定将其初始化为列表中的一对值
initialise_example(X,Y):- assert(example([(X,Y)])).
所以在控制台中,我会输入:
| ?- initialise_example(leftValue, rightValue).
然后这将向数据库保存一个事实:
example([leftValue,rightValue]).
yes
现在我的问题是,如何提取 leftValue 原子才能做到 有些操纵吗?假设 leftValue 和 rightValue 是由多个原子组成的大数据库的一部分。
编辑:
我们说我的事实如下:
example([(leftValue,rightValue),(leftValue2,rightValue2),(leftValue3,rightValue3), . . . , (leftValueN,rightValueN)]).
我如何访问构成上述事实的列表的头部。
example([H|T]).
将用于另一个谓词,但它会存储example()
的整个数据,直到另一个谓词完成它的进程。因此,不要让我在其他谓词中使用example()
的更新数据。