code: Formula translateToFormula(final List<Variable> varOrder) {
      final FormulaFactory f = varOrder.get(0).factory();
      assert this.bits.length == varOrder.size();
      final List<Literal> operands = new ArrayList<>(varOrder.size());
      for (int i = 0; i < this.bits.length; i++)
        if (this.bits[i] != Tristate.UNDEF)
          operands.add(this.bits[i] == Tristate.TRUE ? varOrder.get(i) : varOrder.get(i).negate());
      return f.and(operands);
    }
docs: Translates this term to a formula for a given variable ordering
  @param varOrder the variable ordering
  @return the translation of this term to a formula