Is your feature request related to a problem or challenge?
I noticed during #11559 that evaluate_bounds, which is used as part of determining a functions mononicity was not implemented so the trait default is used.
For many of these functions (e.g. cos) and more narrow set of bounds can be used.
Describe the solution you'd like
Update the unary math scalar function macro to take an evaluate bounds function, and implement that function where appropriate.
Describe alternatives you've considered
No response
Additional context
No response