高效计算的增量模式匹配
1. 图转换规则与传递闭包基础
在图处理中,有一个重要的图转换规则 addLink ,其代码如下:
1 gtrule
AddLink () = {
2
precondition pattern
lhr(S1 ,S2) = {
3
SN(S1);
4
SN(S2);
5
neg find linked (S1 ,S2);
6
} action {
7
new(SN.link(S1 ,S2 ));
8
}
9 }
这个规则用于在断开连接的超级节点之间添加冗余的覆盖链接。
1.1 传递闭包的定义
- 通用和非自反传递闭包 :对于一个定义域 $D$ 上的二元关系 $E$,非自反传递闭包 $E^+$ 由元素对 $\langle u, v \rangle$ 组成,其中存在一个非空的有限链接序列 $\langle u = w_0, w_1 \rangle, \langle w_1, w_2 \rangle, \ldots, \langle w_{k - 1}, w_k = v \rangle$ 属于 $E$。在通用传递闭包的情况下,基础关系 $E$ 是一个“派生边”,不限于简单的图边,而是由任何双参数图模式(例如带有路径表达式、属性检查)定义。我们关注最通用的方法:通用、非自反传递闭包。
- 传递闭包操作 :计算二元关系 $E$ 的传递闭包 $E^+$ 的程序需要暴露一个子例程
Construc
超级会员免费看
订阅专栏 解锁全文
169万+

被折叠的 条评论
为什么被折叠?



