docs: public double getUnnormalizedLogProbability(Assignment assignment) {
      Preconditions.checkArgument(assignment.containsAll(variables.getVariableNumsArray()),
          "Invalid assignment %s to factor graph on variables %s", assignment, variables);
      double logProbability = 0.0;
      for (Factor factor : factors) {
        logProbability += factor.getUnnormalizedLogProbability(assignment);
      }
      return logProbability;
    }