public static void signalVariableValueClash(Proposition prop, Skolem skolem, Stella_Object value1, Stella_Object value2) {
    Proposition.assignTruthValue(prop, Logic.INCONSISTENT_TRUTH_VALUE);
    { String message = "Variable value clash.";
      VariableValueClash exception = null;

      if ((value1 != null) &&
          (value2 != null)) {
        { String message000 = null;

          { Object old$PrintreadablyP$000 = Stella.$PRINTREADABLYp$.get();

            try {
              Native.setBooleanSpecial(Stella.$PRINTREADABLYp$, true);
              message000 = "Skolem " + "`" + Native.stringify(skolem) + "'" + " is equated with multiple values:" + "\n" + "   " + "`" + Native.stringify(value1) + "'" + " and " + "`" + Native.stringify(value2) + "'" + ".";

            } finally {
              Stella.$PRINTREADABLYp$.set(old$PrintreadablyP$000);
            }
          }
          message = message000;
        }
      }
      exception = VariableValueClash.newVariableValueClash(message);
      exception.proposition = prop;
      exception.context = ((Context)(Stella.$CONTEXT$.get()));
      exception.skolem = skolem;
      exception.value1 = value1;
      exception.value2 = value2;
      throw ((VariableValueClash)(exception.fillInStackTrace()));
    }
  }