As benedict wrote to Dr. Math
On 10/02/2012 at 03:34:46 (Eastern Time),
>May I have on your advice on the reason why one-to-many functions are
>classified as not well-defined?
>Eg. the (principal) square root function chooses to output the
>What is the rationale in restricting the output of a function to take
>only 1 value given an input?
>What is so bad/problematic about one-to-many functions?
>Why must we restrict the output a function to claim well-definedness.
>What does well-defined mean anyway?
>I understand that well defined functions means that an input can only
>map to one output. If a=b, then f(a)=f(b).
>I read on wiki that one-to-many functions are called multifunctions.
>But why must be put a distinguish between well-defined function and
The reason we ordinarily want a function to have only one value is so
that when we evaluate an expression, we get only the value we want. If
we want to get more than one value, we’d like to explicitly say so, as
in using “plus-or-minus” in the quadratic formula to take both square
roots. We’d like our calculator to be predictable, not giving either a
positive or negative value for the square root randomly! And it would
be awkward for it to give a set, rather than a single value, as the
There are settings where multiple-valued functions are inescapable,
and we work with them intentionally (namely complex variables); but
this does add complexity (no pun intended). We’d rather not do that
unless it is necessary.
The main idea of a well-defined function is that you want to always
get the same output from a given input. For example, the trigonometric
functions are defined by certain ratios of sides in a right triangle.
Since you could make many right triangles with the same angle, it is
necessary to show that you will always get the same function value for
a given angle, regardless of what triangle you use. (The key, of
course, is that all such triangles are similar, so the ratios are the
same.) If this were not true, then you couldn’t trust the value you
get. But once you know the function is well-defined, you can use it