In mathematics and logic, a vacuous truth is a conditional or universal statement (a universal statement that can be converted to a conditional statement) that is true because the antecedent cannot be satisfied.<ref name=":1">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> It is sometimes said that a statement is vacuously true because it does not really say anything.<ref name=":2">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> For example, the statement "all cell phones in the room are turned off" will be true when no cell phones are present in the room. In this case, the statement "all cell phones in the room are turned on" would also be vacuously true, as would the conjunction of the two: "all cell phones in the room are turned on and turned off", which would otherwise be incoherent and false.
More formally, a relatively well-defined usage refers to a conditional statement (or a universal conditional statement) with a false antecedent.<ref name=":1" /><ref name=":3">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref><ref name=":2" /><ref name=":4">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> One example of such a statement is "if Tokyo is in Spain, then the Eiffel Tower is in Bolivia".
Such statements are considered vacuous truths because the fact that the antecedent is false prevents using the statement to infer anything about the truth value of the consequent. In essence, a conditional statement, that is based on the material conditional, is true when the antecedent ("Tokyo is in Spain" in the example) is false regardless of whether the conclusion or consequent ("the Eiffel Tower is in Bolivia" in the example) is true or false because the material conditional is defined in that way.
Examples common to everyday speech include conditional phrases used as idioms of improbability like "when hell freezes over ..." and "when pigs can fly ...", indicating that not before the given (impossible) condition is met will the speaker accept some respective (typically false or absurd) proposition.
In pure mathematics, vacuously true statements are not generally of interest by themselves, but they frequently arise as the base case of proofs by mathematical induction.<ref>Template:Citation</ref> This notion has relevance in pure mathematics, as well as in any other field that uses classical logic.
Outside of mathematics, statements in the form of a vacuous truth, while logically valid, can nevertheless be misleading. Such statements make reasonable assertions about qualified objects which do not actually exist. For example, a child might truthfully tell their parent "I ate every vegetable on my plate", when there were no vegetables on the child's plate to begin with. In this case, the parent can believe that the child has actually eaten some vegetables, even though that is not true.
Scope of the conceptEdit
A statement <math>S</math> is "vacuously true" if it resembles a material conditional statement <math>P \Rightarrow Q</math>, where the antecedent <math>P</math> is known to be false.<ref name=":1" /><ref name=":3" /><ref name=":2" />
Vacuously true statements that can be reduced (with suitable transformations) to this basic form (material conditional) include the following universally quantified statements:
- <math>\forall x: P(x) \Rightarrow Q(x)</math>, where it is the case that <math>\forall x: \neg P(x)</math>.<ref name=":4" />
- <math>\forall x \in A: Q(x)</math>, where the set <math>A</math> is empty.
- This logical form <math>\forall x \in A: Q(x)</math> can be converted to the material conditional form in order to easily identify the antecedent. For the above example <math>S</math> "all cell phones in the room are turned off", it can be formally written as <math>\forall x \in A: Q(x)</math> where <math>A</math> is the set of all cell phones in the room and <math>Q(x)</math> is "<math>x</math> is turned off". This can be written to a material conditional statement <math>\forall x \in B: P(x) \Rightarrow Q(x)</math> where <math>B</math> is the set of all things in the room (including cell phones if they exist in the room), the antecedent <math>P(x)</math> is "<math>x</math> is a cell phone", and the consequent <math>Q(x)</math> is "<math>x</math> is turned off".
- <math>\forall \xi: Q(\xi)</math>, where the symbol <math>\xi</math> is restricted to a type that has no representatives.
Vacuous truths most commonly appear in classical logic with two truth values. However, vacuous truths can also appear in, for example, intuitionistic logic, in the same situations as given above. Indeed, if <math>P</math> is false, then <math>P \Rightarrow Q</math> will yield a vacuous truth in any logic that uses the material conditional;<ref>Johansson's minimal logic is an exception, because the proof needs the principle of explosion.</ref> if <math>P</math> is a necessary falsehood, then it will also yield a vacuous truth under the strict conditional.
Other non-classical logics, such as relevance logic, may attempt to avoid vacuous truths by using alternative conditionals (such as the case of the counterfactual conditional).
In computer programmingEdit
Many programming environments have a mechanism for querying if every item in a collection of items satisfies some predicate. It is common for such a query to always evaluate as true for an empty collection. For example:
- In JavaScript, the array method
every
executes a provided callback function once for each element present in the array, only stopping (if and when) it finds an element where the callback function returns false. Notably, calling theevery
method on an empty array will return true for any condition.<ref>{{#invoke:citation/CS1|citation
|CitationClass=web }}</ref>
- In Python, the built in
all()
function returnsTrue
only when all of the elements of an array areTrue
or the array is of length zero as shown in these examples:all([1,1])==True; all([1,1,0])==False; all([])==True
.<ref>{{#invoke:citation/CS1|citation
|CitationClass=web
}}</ref> A less ambiguous way to express this is to say all()
returns True when none of the elements are False.
- In Rust, the
Iterator::all
function accepts an iterator and a predicate and returnstrue
only when the predicate returnstrue
for all items produced by the iterator, or if the iterator produces no items.<ref>{{#invoke:citation/CS1|citation
|CitationClass=web }}</ref>
- In SQL, the function, the function
ANY_VALUE
can differ depending on the RDBMS's behaviour relating NULLs to vacuous truth. Some RDBMS might returnnull
even if there are non-null
values.<ref>{{#invoke:citation/CS1|citation
|CitationClass=web
}}</ref> Some DBMS might not allow for its use in filter(…)
or over(…)
clauses.
- In Kotlin, the collection method
all
returnstrue
when the collection is empty. - In C#, the Linq method
All
returnstrue
when the collection is empty. - In C++, the
std::all_of
function template returnstrue
for an empty collection.<ref>{{#invoke:citation/CS1|citation
|CitationClass=web }}</ref>
ExamplesEdit
These examples, one from mathematics and one from natural language, illustrate the concept of vacuous truths:
- "For any integer x, if Template:Nowrap then Template:Nowrap."<ref>{{#invoke:citation/CS1|citation
|CitationClass=web }}</ref> – This statement is true non-vacuously (since some integers are indeed greater than 5), but some of its implications are only vacuously true: for example, when x is the integer 2, the statement implies the vacuous truth that "if Template:Nowrap then Template:Nowrap".
- "All my children are goats" is a vacuous truth when spoken by someone without children. Similarly, "None of my children is a goat" would also be a vacuous truth when spoken by the same person.
See alsoEdit
- Definite description
- De Morgan's laws – specifically the law that a universal statement is true just in case no counterexample exists: <math>\forall x \, P(x) \equiv \neg \exists x \, \neg P(x)</math>
- Empty sum and empty product
- Empty function
- Paradoxes of material implication, especially the principle of explosion
- Presupposition, double question
- State of affairs (philosophy)
- Tautology (logic) – another type of true statement that also fails to convey any substantive information
- Triviality (mathematics) and degeneracy (mathematics)
ReferencesEdit
BibliographyEdit
- Blackburn, Simon (1994). "vacuous", The Oxford Dictionary of Philosophy. Oxford: Oxford University Press, p. 388.
- David H. Sanford (1999). "implication". The Cambridge Dictionary of Philosophy, 2nd. ed., p. 420.
- Template:Cite conference