【发布时间】:2016-09-26 13:08:57
【问题描述】:
考虑关系:边缘(X,Y),红色(X,Y),蓝色(X,Y)。这些关系表示一个图,其边缘可以被着色为红色或蓝色(或无颜色)。
为以下查询提供安全的数据记录规则(必要时进行否定)。
第一季度。找到从 X 到 Y 的路径(链接边序列)的节点 X 和 Y 对?
我的尝试:- 可达(X,Y):- 边缘(X,Y)
可达(X,Y):- 边缘(X,Z),可达(Z,Y)
第二季度。找到节点 X 和 Y 对,其中存在从 X 到 Y 的均匀长度的路径(一系列连接的边),红色和蓝色交替出现?
我的尝试:
我制作了奇偶数据记录程序和一个红/蓝程序,但不知道如何将两者结合以获得偶数长度的交替红/蓝节点
ODD(x,y):- 边(x,y)
ODD(x,y):- 边(x,z), EVEN(z,y)
EVEN(x,y):- 边(x,z), ODD(z,y)。
路径(X,Y) :- 红色(X,Y)
路径(X,Y) :- 路径(X,Z), 蓝色(Z,W), 路径(W,Y)
【问题讨论】:
标签: database database-design relational-database datalog