public static Proposition eradicateHoldsProposition(Proposition self) {
    if ((self.operator == Logic.SGT_PL_KERNEL_KB_HOLDS) &&
        (!Stella_Object.isaP((self.arguments.theArray)[0], Logic.SGT_LOGIC_PATTERN_VARIABLE))) {
      Proposition.normalizePredicateProposition(self);
      { Proposition duplicate = Proposition.findSimilarProposition(self, null);

        if (duplicate != null) {
          { Stella_Object arg = null;
            Vector vector000 = self.arguments;
            int index000 = 0;
            int length000 = vector000.length();
            int i = Stella.NULL_INTEGER;
            int iter000 = 0;

            for (;index000 < length000; index000 = index000 + 1, iter000 = iter000 + 1) {
              arg = (vector000.theArray)[index000];
              i = iter000;
              (duplicate.arguments.theArray)[i] = arg;
            }
          }
          self.free();
          return (duplicate);
        }
      }
    }
    return (self);
  }