I also agree on using the minBy as the default mechanism. If both min and minBy are needed, it would seem more natural for min (and also for sum) to return only the given field of the tuple in my opinion.
More generally a reduce function with a custom return type would also be useful in my view. In that case the user would also give a value of type T to begin the reduction with, and implement a function which reduces a value and a value of type T and return a value of type T. Would that make sense?
