【发布时间】:2018-03-01 13:18:16
【问题描述】:
我们正在使用 CYK 表形成的概念在 Prolog 上生成这些结果。以下是 product_c(+Cell1, +Cell2, -Product) 的一些示例输出:
?- product_c(["A","B"],["C","D"],What).
What = ["AC", "AD", "BC", "BD"].
?- product_c(["A"],[],What).
What = [].
我尝试过使用 string_concat,但结果如下:
What = ["A", "B", "C", "D"].
我不确定如何解决这个问题。非常感谢任何帮助。
【问题讨论】:
-
你能展示你写的代码吗?还有一些示例查询/预期结果?
-
这就是我所做的:product_c(Cell1,Cell2,Product) :- append(Cell1, Cell2, Product)。更正:我使用了 append NOT string_concat。我得到 What = ["A", "B", "C", "D"] 而不是 What = ["AC", "AD", "BC", "BD"] 的预期结果。跨度>