问题标签 [datalog]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
datomic - 如何对 Datalog 查询中的结果进行排序
我正在使用带有游戏框架的 datomic。玩起来很棒,datomic 很快。所以总体来说是一个很好的组合。因为,我是 datomic 的新手(和数据记录,即查询语言 datomic 使用),我无法对我的结果进行排序(就像我们一样,在 sql 中排序)。例如。
如果我的查询是:
它应该返回导演是 Dave Swag 的电影的标题,结果按图像发布的年份排序。谢谢 :)
z3 - Z3中的固定点
有人可以指出为什么最终查询没有输出吗?
基本上我告诉 Z3 如果 vs-)vd 和 vs->ss 和 vd->sd,那么 sd 是从 ss 派生的。
clojure - not 子句在 Datomic 中如何工作?
我试图找到两个输入之间的纬度。我的查询:
我的错误:
任何有助于理解我的查询有什么问题的帮助将不胜感激。如果您还可以使用 Datomic 规则来分解in-bounds
每一半的部分,则可以加分。
prolog - 带变量的反向链接
我一直在阅读有关 Prolog/Datalog 中的推理的信息,虽然前向链接似乎很容易掌握,但对于任何类型的复杂示例,我在后向链接方面存在一些问题,这些示例不仅仅是命题或用于确定真值或假值。我正在阅读一篇文章,给出了以下示例:
假设我们要查询sg(a,W)
wherea
是常量W
还是变量。这可以理解为:
给我所有与
a
.
文章首先指出,这些特定规则将导致 Prolog/Datalog 中的无限循环,但可以通过将第二条规则更改为:
为什么原始结果会循环?其次,这种查询的执行会是什么样子?值何时绑定到这些变量?
exception - Datomic 数据日志:使用聚合时出现 ArrayIndexOutOfBounds 异常
鉴于这db
是一个数据库值,以下查询将引发异常:
(信息模型是有几场演唱会属于一个活动,并且需求,我们要获取演唱会字段和每个演唱会的需求数量)。
堆栈跟踪在这里:
难道我做错了什么 ?
datalog - 如何在没有警告消息的情况下从 logicblox 中删除数据
在新版本的 logicblox(任何高于 4.2.1 的版本)中,如果存在谓词“Person(p), hasPNr(p:n) -> int(n)”。然后我插入一个数据“+Person(p),+hasPNr[p]=1”。然后如果我想通过“-Person(1)”删除数据。将出现警告消息“警告:表达式‘1’的类型为‘int’,但需要‘Person’类型的值。编译器插入了谓词‘hasPNr’的使用以允许编译代码。” 如果没有此消息,如何删除数据?
clojure - 可以通过 Datomic pull 语法获取枚举值吗?
在mbrainz示例数据中,:artist/type 是一个枚举。是否可以从 :db/ident 中提取枚举值并使用拉语法将其关联为 :artist/type 键的值?
这是我能得到的最接近的:
是否可以使用拉语法将结果重塑成这样的东西?
clojure - 在 (datomic.api/q '[]) 之外定义数据记录查询组件
我正在使用 clojure 的 datomic.api。我希望重构一个有点复杂的数据日志查询,例如:
...变成更具可读性的东西。我的愿望是将(and...)
查询的组件本地绑定到 alet
中,并通过数据日志列表中的名称来引用它们。像这样:
let
datomic.api/q 列表中的各种引用(和取消引用)都不起作用。有什么建议么?
datomic - Parameterized and case insensitive query in datalog (datomic)
I want to compose a query that takes a firstname as input parameter and returns all matching records. A match should be case insensitive. As an example I'd like to extract all the people named Douglass. Parameterized, but case sensitive this would be :
The following query will yield all matches regardless the case, but is not parameterized (the ?par is not used yet, but a placeholder for the parameterized query) :
But I'm not able to combine them. A - probably naive - approach is throwing Unable to resolve symbol: ?par in this context
:
So : how to pass the firstname for this case?