Returns true if, from this ArrowSet, one can deduce that determinants determine dependents. That is, if dependents ⊆ closure(determinants).
(ImmutableBitSet determinants, ImmutableBitSet dependents)
| 282 | * if {@code dependents} ⊆ closure({@code determinants}). |
| 283 | */ |
| 284 | public boolean implies(ImmutableBitSet determinants, ImmutableBitSet dependents) { |
| 285 | ImmutableBitSet dets = determinantsToDependentsMap.get(determinants); |
| 286 | if (dets != null && dets.contains(dependents)) { |
| 287 | return true; |
| 288 | } |
| 289 | return dependents(determinants).contains(dependents); |
| 290 | } |
| 291 | |
| 292 | /** |
| 293 | * Builder for ArrowSet. |