изначально примерно так и надо было бы сделать, но для этого требовался дар предвидения :)
была бы argmax(f, A) с предлагаемым определением, но никто бы её не использовал для поиска максимума в массиве - была бы вместо этого функция типа indmax([f, ]A)