/** * Return true if the given predicated is tabled, currently this is true if the predicate is a * tabled predicate or the predicate is a wildcard and some tabled predictes exist. */ public boolean isTabled(Node predicate) { if (allTabled) return true; if (predicate.isVariable() && !tabledPredicates.isEmpty()) { return true; } else { return tabledPredicates.contains(predicate); } }