code: func (e *executor) executeMin(ctx context.Context, index string, c *pql.Call, shards []uint64, opt *execOptions) (ValCount, error) {
  	span, ctx := tracing.StartSpanFromContext(ctx, "Executor.executeMin")
  	defer span.Finish()
  
  	if field := c.Args["field"]; field == "" {
  		return ValCount{}, errors.New("Min(): field required")
  	}
  
  	if len(c.Children) > 1 {
  		return ValCount{}, errors.New("Min() only accepts a single bitmap input")
  	}
  
  	// Execute calls in bulk on each remote node and merge.
  	mapFn := func(shard uint64) (interface{}, error) {
  		return e.executeMinShard(ctx, index, c, shard)
  	}
  
  	// Merge returned results at coordinating node.
  	reduceFn := func(prev, v interface{}) interface{} {
  		other, _ := prev.(ValCount)
  		return other.smaller(v.(ValCount))
  	}
  
  	result, err := e.mapReduce(ctx, index, shards, c, opt, mapFn, reduceFn)
  	if err != nil {
  		return ValCount{}, err
  	}
  	other, _ := result.(ValCount)
  
  	if other.Count == 0 {
  		return ValCount{}, nil
  	}
  	return other, nil
  }
docs: // executeMin executes a Min() call.