public static boolean checkForSingleValuedGoalP(Description pattern, Cons iobindings) {
    { Cons iovariables = Stella.NIL;
      Cons boundvariables = Stella.NIL;

      { PatternVariable vbl = null;
        Vector vector000 = pattern.ioVariables;
        int index000 = 0;
        int length000 = vector000.length();
        Cons collect000 = null;

        for (;index000 < length000; index000 = index000 + 1) {
          vbl = ((PatternVariable)((vector000.theArray)[index000]));
          if (collect000 == null) {
            {
              collect000 = Cons.cons(vbl, Stella.NIL);
              if (iovariables == Stella.NIL) {
                iovariables = collect000;
              }
              else {
                Cons.addConsToEndOfConsList(iovariables, collect000);
              }
            }
          }
          else {
            {
              collect000.rest = Cons.cons(vbl, Stella.NIL);
              collect000 = collect000.rest;
            }
          }
        }
      }
      { Stella_Object v1 = null;
        Cons iter000 = iovariables;
        Stella_Object v2 = null;
        Cons iter001 = iobindings;

        for (;(!(iter000 == Stella.NIL)) &&
                  (!(iter001 == Stella.NIL)); iter000 = iter000.rest, iter001 = iter001.rest) {
          v1 = iter000.value;
          v2 = iter001.value;
          if (v2 != null) {
            boundvariables = Cons.cons(v1, boundvariables);
          }
        }
      }
      return (Proposition.singleValuedGoalP(pattern.proposition, iovariables, boundvariables));
    }
  }