public static boolean satisfiesIntervalBoundsP(Stella_Object renamed_Object, Stella_Object value) {
    { Stella_Object lb = null;
      boolean strictlowerP = false;
      Stella_Object ub = null;
      boolean strictupperP = false;
      boolean answer = true;

      { Object [] caller_MV_returnarray = new Object[1];

        lb = PlKernelKb.accessIntervalBounds(renamed_Object, PlKernelKb.KWD_LOWER_BOUND, caller_MV_returnarray);
        strictlowerP = ((boolean)(((BooleanWrapper)(caller_MV_returnarray[0])).wrapperValue));
      }
      { Object [] caller_MV_returnarray = new Object[1];

        ub = PlKernelKb.accessIntervalBounds(renamed_Object, PlKernelKb.KWD_UPPER_BOUND, caller_MV_returnarray);
        strictupperP = ((boolean)(((BooleanWrapper)(caller_MV_returnarray[0])).wrapperValue));
      }
      if (PlKernelKb.nullLiteralWrapperP(value)) {
        return (false);
      }
      if (!(PlKernelKb.nullLiteralWrapperP(lb))) {
        if (strictlowerP) {
          answer = PlKernelKb.compareIntervalBoundsP(PlKernelKb.SGT_PL_KERNEL_KB_l, lb, value);
        }
        else {
          answer = PlKernelKb.compareIntervalBoundsP(PlKernelKb.SGT_PL_KERNEL_KB_el, lb, value);
        }
      }
      if (!(PlKernelKb.nullLiteralWrapperP(ub))) {
        if (strictupperP) {
          answer = answer &&
              PlKernelKb.compareIntervalBoundsP(PlKernelKb.SGT_PL_KERNEL_KB_l, value, ub);
        }
        else {
          answer = answer &&
              PlKernelKb.compareIntervalBoundsP(PlKernelKb.SGT_PL_KERNEL_KB_el, value, ub);
        }
      }
      return (answer);
    }
  }