Я не могу понять, как рассчитать среднее, максимальное и минимальное значение с помощью языка программирования декларативной логики Datalog.
Например. Учитывая эту простую схему
Flows(Stream, River)
Rivers(River, Length)
Если я хочу
а) средней длины рек,
б) самая длинная река,
в) и река с меньшим количеством ручьев
каковы правильные запросы Datalog?
Я ознакомился с теорией Datalog, но не могу понять, как эти простые запросы на другом языке можно решить с помощью Datalog, и не нашел подобного примера.
ПРИМЕЧАНИЕ
Используемый мной журнал данных содержит базовые арифметические функции, такие как y is z+1
, y is z-1
, y is z\1
или y is z*1
, и вы можете использовать операторы X<Y
или Y>X
, а также отрицание, поэтому теоретически должен быть возможен какой-либо способ опроса такого рода, поскольку Обладает достаточной выразительной силой.