我無法確定如何使用Datalog聲明性邏輯編程語言計算平均值,最大值和最小值。Datalog中的最大最小值和平均值
例如,考慮到這個簡單的模式
Flows(Stream, River)
Rivers(River, Length)
如果我想
一)河流的平均長度,
B)最長的河流,
c)和河流較少流
什麼是正確的Datalog查詢?
我已經閱讀了Datalog理論,但無法確定這些簡單的在另一種語言查詢中如何用Datalog解決,並且沒有找到任何類似的樣本。
注意
,我使用的是一個像y is z+1
,y is z-1
,y is z\1
或y is z*1
基本的運算功能,並且可以使用X<Y
或Y>X
陳述,和否定的數據記錄,所以理論上應該可以做這樣的審訊中因爲它有足夠的表現力。
我使用的數據記錄是基本的算術函數,如'y是z + 1'或'y是z * 1'等等,並且您可以使用'X X'語句,因此理論上應該可以由於它具有足夠的表達力,因此以某種方式進行這種詢問。 – AndreaF
相信我,在標準Datalog中這是不可能的,沒有擴展的聚合。 Datalog不是圖靈完整的。另請參閱維基百科中的數據記錄條目。 – user474491
正如我所說的不是標準Datalog並支持這些操作 – AndreaF