C++: some experimental product flow queries

This commit is contained in:
Robert Marsh
2022-08-09 10:19:45 -04:00
parent d0f4c2f823
commit e4d0e7431c
9 changed files with 225 additions and 1 deletions

View File

@@ -26,7 +26,7 @@ module ProductFlow {
) {
isSourcePair(source1.getNode(), source2.getNode()) and
isSinkPair(sink1.getNode(), sink2.getNode()) and
reachablePair(this, source1, source2, sink1, sink2)
reachablePair2(this, source1, source2, sink1, sink2)
}
}
@@ -52,6 +52,10 @@ module ProductFlow {
override predicate isSink(DataFlow::Node sink) {
exists(Configuration conf | conf.isSinkPair(_, sink))
}
override int explorationLimit() {
result = 10
}
}
predicate reachablePair1(