public static boolean hasDisjunctionP(Proposition goal) {
    if (goal.kind == Logic.KWD_OR) {
      return (true);
    }
    { boolean foundP000 = false;

      { Stella_Object arg = null;
        Vector vector000 = goal.arguments;
        int index000 = 0;
        int length000 = vector000.length();

        loop000 : for (;index000 < length000; index000 = index000 + 1) {
          arg = (vector000.theArray)[index000];
          if (Stella_Object.isaP(arg, Logic.SGT_LOGIC_PROPOSITION) &&
              Proposition.hasDisjunctionP(((Proposition)(arg)))) {
            foundP000 = true;
            break loop000;
          }
        }
      }
      { boolean value000 = foundP000;

        return (value000);
      }
    }
  }