我不知道如何使用 Datalog 声明性逻辑编程语言计算平均值、最大值和最小值。
例如。考虑到这个简单的模式
Flows(Stream, River)
Rivers(River, Length)
如果我想要
a) 河流的平均长度,
b) 最长的河流,
c) 河流较少的河流
什么是正确的 Datalog 查询?
我已阅读 Datalog 理论,但无法弄清楚如何使用 Datalog 解决这些简单的另一种语言查询,并且没有找到任何类似的示例。
注意
我使用的数据记录具有基本的算术功能,例如、y is z+1
或,您可以使用or语句和否定,因此理论上应该可以以某种方式进行这种询问,因为它具有足够的表达能力。y is z-1
y is z\1
y is z*1
X<Y
Y>X