【发布时间】:2016-09-07 01:51:30
【问题描述】:
想知道如何以以下形式描述树关系:
module tree
pred isTree (r: univ −> univ) {...} run isTree for 4
如果我有:
refines module Graph
pred isConnected {
some n: Node |
(Graph.nodes = n) || (Graph.nodes = n.^(edges.(src + dest)))
}
pred noCycles {
all n: Node | n not in (n.^(outEdges.dest) + n.^(inEdges.src))
}
pred loneParent {
all n: Node | lone n.inEdges
}
fact isTree {
noDoubleEdges && isConnected && noCycles && loneParent
}
我想知道如何用 r: univ -> univ 对树上的上述约束进行建模。
非常感谢您!
【问题讨论】:
标签: tree relational alloy calculus