code: function isAmbiguous(types) {
    var buckets = {};
    var i, l, bucket, type;
    for (i = 0, l = types.length; i < l; i++) {
      type = types[i];
      if (!Type.isType(type, 'logical')) {
        bucket = getTypeBucket(type);
        if (buckets[bucket]) {
          return true;
        }
        buckets[bucket] = true;
      }
    }
    return false;
  }
docs: Check whether a collection of types leads to an ambiguous union.
  
  @param types {Array} Array of types.