public static boolean cheapEmptyTermP(LogicObject self) {
    if (Logic.skolemP(self)) {
      { Proposition definingproposition = ((Skolem)(self)).definingProposition;

        if ((definingproposition != null) &&
            (Proposition.collectionofPropositionP(definingproposition) &&
             (definingproposition.arguments.length() == 1))) {
          return (true);
        }
      }
    }
    { boolean testValue000 = false;

      if (Logic.testPropertyP(self, Logic.SGT_PL_KERNEL_KB_EMPTY)) {
        testValue000 = true;
      }
      else {
        { boolean foundP000 = false;

          { LogicObject renamed_Super = null;
            Iterator iter000 = LogicObject.allDirectSupercollections(self, false);

            loop000 : while (iter000.nextP()) {
              renamed_Super = ((LogicObject)(iter000.value));
              if (LogicObject.cheapEmptyTermP(renamed_Super)) {
                foundP000 = true;
                break loop000;
              }
            }
          }
          testValue000 = foundP000;
        }
      }
      { boolean value000 = testValue000;

        return (value000);
      }
    }
  }