public function min(Traversable $traversable)
    {
        $array = iterator_to_array($traversable, false);
        Arrays::sort($array, $this);
        return Preconditions::checkElementExists($array, 0);
    }