code: public SortedMap<Variable, Tristate> toMap() {
          final SortedMap<Variable, Tristate> map = new TreeMap<>();
          if (hasPositiveBackboneResult()) {
              for (final Variable var : this.positiveBackbone) {
                  map.put(var, Tristate.TRUE);
              }
          }
          if (hasNegativeBackboneResult()) {
              for (final Variable var : this.negativeBackbone) {
                  map.put(var, Tristate.FALSE);
              }
          }
          if (hasOptionalVariablesResult()) {
              for (final Variable var : this.optionalVariables) {
                  map.put(var, Tristate.UNDEF);
              }
          }
          return Collections.unmodifiableSortedMap(map);
      }
docs: Returns the backbone as map from variables to tri-states. A positive variable is mapped to {@code Tristate.TRUE},
  a negative variable to {@code Tristate.FALSE} and the optional variables to {@code Tristate.UNDEF}.
  @return the mapping of the backbone