In mathematics, an expression is called well-defined or unambiguous if its definition assigns it a unique interpretation or value. Otherwise, the expression is said to be not well-defined, ill-defined or ambiguous.[1] A function is well-defined if it gives the same result when the representation of the input is changed without changing the value of the input. For instance, if f takes real numbers as input, and if f(0.5) does not equal f(1/2) then f is not well-defined (and thus not a function).[2] The term well-defined can also be used to indicate that a logical expression is unambiguous or uncontradictory.[3]
A function that is not well-defined is not the same as a function that is undefined. For example, if f(x) = 1/x, then the fact that f(0) is undefined does not mean that the f is not well-defined — but that 0 is simply not in the domain of f.
Let [math]\displaystyle{ A_0,A_1 }[/math] be sets, let [math]\displaystyle{ A = A_0 \cup A_1 }[/math] and "define" [math]\displaystyle{ f: A \rightarrow \{0,1\} }[/math] as [math]\displaystyle{ f(a)=0 }[/math] if [math]\displaystyle{ a \in A_0 }[/math] and [math]\displaystyle{ f(a)=1 }[/math] if [math]\displaystyle{ a \in A_1 }[/math].
Then [math]\displaystyle{ f }[/math] is well-defined if [math]\displaystyle{ A_0 \cap A_1 = \emptyset\! }[/math]. For example, if [math]\displaystyle{ A_0:=\{2,4\} }[/math]and [math]\displaystyle{ A_1:=\{3,5\} }[/math], then [math]\displaystyle{ f(a) }[/math]would be well-defined and equal to [math]\displaystyle{ \operatorname{mod}(a,2) }[/math].
However, if [math]\displaystyle{ A_0 \cap A_1 \neq \emptyset }[/math], then [math]\displaystyle{ f }[/math] would not be well-defined because [math]\displaystyle{ f(a) }[/math] is "ambiguous" for [math]\displaystyle{ a \in A_0 \cap A_1 }[/math]. For example, if [math]\displaystyle{ A_0:=\{2\} }[/math] and [math]\displaystyle{ A_1:=\{2\} }[/math], then [math]\displaystyle{ f(2) }[/math] would have to be both 0 and 1, which makes it ambiguous. As a result, the latter [math]\displaystyle{ f }[/math] is not well-defined and thus not a function.
In order to avoid the apostrophes around "define" in the previous simple example, the "definition" of [math]\displaystyle{ f }[/math] could be broken down into two simple logical steps:
While the definition in step 1 is formulated with the freedom of any definition and is certainly effective (without the need to classify it as "well-defined"), the assertion in step 2 has to be proved. That is, [math]\displaystyle{ f }[/math] is a function if and only if [math]\displaystyle{ A_0 \cap A_1 = \emptyset }[/math], in which case [math]\displaystyle{ f }[/math]— as a function — is well-defined. On the other hand, if [math]\displaystyle{ A_0 \cap A_1 \neq \emptyset }[/math], then for an [math]\displaystyle{ a \in A_0 \cap A_1 }[/math], we would have that [math]\displaystyle{ (a,0) \in f }[/math] and [math]\displaystyle{ (a,1) \in f }[/math], which makes the binary relation [math]\displaystyle{ f }[/math] not functional (as defined in Binary relation) and thus not well-defined as a function. Colloquially, the "function" [math]\displaystyle{ f }[/math] is also called ambiguous at point [math]\displaystyle{ a }[/math] (although there is per definitionem never an "ambiguous function"), and the original "definition" is pointless. Despite these subtle logical problems, it is quite common to anticipatorily use the term definition (without apostrophes) for "definitions" of this kind — for three reasons:
The question of well-definedness of a function classically arises when the defining equation of a function does not (only) refer to the arguments themselves, but (also) to elements of the arguments, serving as representatives. This is sometimes unavoidable when the arguments are cosets and the equation refers to coset representatives. The result of a function application must then not depend on the choice of reprentative.
For example, consider the following function
where [math]\displaystyle{ n\in\Z, m\in \{4,8\} }[/math] and [math]\displaystyle{ \Z/m\Z }[/math] are the integers modulo m and [math]\displaystyle{ \overline{n}_m }[/math] denotes the congruence class of n mod m.
N.B.: [math]\displaystyle{ \overline{n}_4 }[/math] is a reference to the element [math]\displaystyle{ n \in \overline{n}_8 }[/math], and [math]\displaystyle{ \overline{n}_8 }[/math] is the argument of [math]\displaystyle{ f }[/math].
The function [math]\displaystyle{ f }[/math] is well-defined, because
As a counter example, the converse definition
does not lead to a well-defined function, since e.g. [math]\displaystyle{ \overline{1}_4 }[/math] equals [math]\displaystyle{ \overline{5}_4 }[/math] in [math]\displaystyle{ \Z/4\Z }[/math], but the first would be mapped by [math]\displaystyle{ g }[/math] to [math]\displaystyle{ \overline{1}_8 }[/math], while the second would be mapped to [math]\displaystyle{ \overline{5}_8 }[/math], and [math]\displaystyle{ \overline{1}_8 }[/math] and [math]\displaystyle{ \overline{5}_8 }[/math] are unequal in [math]\displaystyle{ \Z/8\Z }[/math].
In particular, the term well-defined is used with respect to (binary) operations on cosets. In this case one can view the operation as a function of two variables and the property of being well-defined is the same as that for a function. For example, addition on the integers modulo some n can be defined naturally in terms of integer addition.
The fact that this is well-defined follows from the fact that we can write any representative of [math]\displaystyle{ [a] }[/math] as [math]\displaystyle{ a+kn }[/math], where [math]\displaystyle{ k }[/math] is an integer. Therefore,
and similarly for any representative of [math]\displaystyle{ [b] }[/math], thereby making [math]\displaystyle{ [a+b] }[/math] the same irrespective of the choice of representative.[3]
For real numbers, the product [math]\displaystyle{ a \times b \times c }[/math] is unambiguous because [math]\displaystyle{ (a \times b)\times c = a \times (b \times c) }[/math] (and hence the notation is said to be well-defined).[1] This property, also known as associativity of multiplication, guarantees that the result does not depend on the sequence of multiplications, so that a specification of the sequence can be omitted.
The subtraction operation, on the other hand, is not associative. However, there is a convention that [math]\displaystyle{ a-b-c }[/math] is shorthand for [math]\displaystyle{ (a-b)-c }[/math], thus it is "well-defined".
Division is also non-associative. However, in the case of [math]\displaystyle{ a/b/c }[/math], parenthezation conventions are not so well established, so this expression is often considered ill-defined.
Unlike with functions, the notational ambiguities can be overcome more or less easily by means of additional definitions (e.g., rules of precedence, associativity of the operator). For example, in the programming language C the operator -
for subtraction is left-to-right-associative, which means that a-b-c
is defined as (a-b)-c
, and the operator =
for assignment is right-to-left-associative, which means that a=b=c
is defined as a=(b=c)
.[4] In the programming language APL there is only one rule: from right to left — but parentheses first.
A solution to a partial differential equation is said to be well-defined if it is determined by the boundary conditions in a continuous way as the boundary conditions are changed.[1]