docs: public boolean subsumes(ReasonerAtomicQuery parent){
          MultiUnifier multiUnifier = this.getMultiUnifier(parent, UnifierType.SUBSUMPTIVE);
          if (multiUnifier.isEmpty()) return false;
          MultiUnifier inverse = multiUnifier.inverse();
          return//check whether propagated answers would be complete
                  !inverse.isEmpty() &&
                          inverse.stream().allMatch(u -> u.values().containsAll(this.getVarNames()))
                          && !parent.getAtoms(NeqPredicate.class).findFirst().isPresent()
                          && !this.getAtoms(NeqPredicate.class).findFirst().isPresent();
      }