0

I've always thought that an open formula, i.e. a formula containing free variables, has no truth value. For example, strictly speaking, I would say that for $x\in\mathbb R$, the formula "$x^2\geq0$" is neither true or false per se; what is true is the quantified (thus closed) formula "$\forall x\in\mathbb R : x^2\geq0$".

But if we use the formal system of natural deduction, then the formula "$x^2\geq0$" is a theorem since it can be deduced from "$\forall y\in\mathbb R:y^2\geq0$" by applying the simple rule of elimination of $\forall$ : $$\frac{\forall y\in\mathbb R:y^2\geq0}{x^2\geq0}{\forall_E}$$ Since "$x^2\geq0$" is deducible, does that mean that we can say, strictly, that it is true, just as "$4^2\geq0$" is true ?

Sephi
  • 357

2 Answers2

3

An open formula does have a truth value. It's just that this truth value depends on the particular assignment function chosen.

The truth value of any well-formed formula $\phi$ under an assignment $v$, $[[\phi]]_v$, is defined recursively on the structure of the formula, and this does not exclude open formulas at all. It couldn't, because we need the truth value of a subformula like $P(x)$ in order to make sense of a closed formula like $\forall x: P(x)$ in the first place. In any case, the truth value of a formula is formally always relative to an assignment function. The difference between open and closed formulas is whether switching to a different assignment changes the truth value of the formula.

What happens when we quantify (i.e. go from something like $P(x)$ to $\forall x: P(x)$) is that the current assignment we are evaluating our formula under gets "overridden", since we are now no longer interested in a particular mapping from the variable $x$ into the domain $A$, but abstract over all possible such mappings and say that $\forall x: P(x)$ is true if any way of mapping $x$ to elements from the domain makes $P(x)$ true. By definition,

$[[\forall x: \phi]]_v$ = true iff for all $v': v'(x) \in A$, $[[\phi]]_{v'}$ = true

But that precisely requires knowing the truth of $\phi$ under each assignment, and $\phi$ could be an open formula like $P(x)$. The truth of $P(x)$ is determined recursively by 1) evaluating the term $x$ - its interpretation will be whatever object the current assignment maps $x$ to - and 2) checking whether the predicate $P$ applies to that object. If we find that $P$ is true of every object that $x$ could possibly be interpreted as, then $\forall x: P(x)$ is true. So eventually it doesn't matter which assignment $v$ we originally started evaluating $\forall x: P(x)$ with, since we are quantifying over other possible assignments $v'$ anyway. This is why the truth value of a closed formula, although formula still defined relative to an assignment $v$, does not actually depend on that particular assignment, but on all possible variants of mapping variables to objects of the domain.

But that doesn't leave the truh value of an open formula undefined. If we restrict ourselves to something like $P(x)$, then the truth value of $P(x)$ under an assignment $v$, $[[P(x)]]_v$, will depend on whether $v$ assigns $x$ an object of which $P$ is true. So under one assignment, $P(x)$ could have the truth value $true$ and $false$ under another. Other than in closed formulas, it is important which $v$ we evaluate our formula with, as this $v$ will not be "overridden" by a quantifier. $x^2 \geq 0$ can be said to be true or false, just that we then we need to say which object we chose $x$ to be assigned to - that is, under which assignment we evaluated the formula.

A question different from truth is that of validity. A formula is valid iff it is true under all assignments. These are two different notions: Truth is relative to an assignment, validity is abstracting over all possible assignments.
By definition,

$\phi$ is valid iff for all assignments $v$: $[[\phi]]_v$ = true

For closed formulas, since the truth value of the formula didn't depend on a particular assignment in the first place, the validity of the formula is the same as its truth under an arbitrary assignment.
For open formulas, asserting validity triggers in an implicit universal quantification: Since we say that something like $x^2 \geq 0$ is valid if it is true under all assignments, we are basically asserting the validity of the universal quantification of the formula, $\forall x: x^2 \geq 0$.

This now makes sense w.r.t. to your deduction example: When going from the universally quantified formula to one with free variables, we get a formula whose truth depends on which assignment we choose to evaluate the free variables with, but if we ask whether the conclusion formula is valid, i.e. true under all interpretations, then we end up with a statement equivalent to $\forall x: x^2 \geq 0$, so all we did was renaming a bound variable, and the validity of the statement in the assumption is obviously equivalent to the validity of the statement in the conclusion.

1

The rule of Universal Instantiation simply formalizes the evident intuitive principle that "what holds of all, holds of any"

In other words, if property $A$ holds of every object in the "universe" (this is the meaning of $\forall x A(x)$), then it holds also of the object named by $t$ (i.e. $A(t)$).

The rule formalizes this principle, licensing the derivability from an universally quantified formula of every instance of it.

Thus, from $∀y \ (y^2 ≥ 0)$ we can validly derive $(t^2 ≥ 0)$ for every term (i.e. "name") $t$ of the language.

A variable $x$ is a term and if the language has the "usual" names for numbers (the numerals) : $0,1,2,\ldots$, they are terms.

Thus, also $(2^2 ≥ 0)$ is a correct application of UI.

And if the language has function symbols, like $+$, also $(x+2)$ is a term, and so $((x+2)^2 ≥ 0)$ is a correct application of UI.

  • Is any term a "name" of an object ? Since there is a difference between constants and variables, I've always thought that any closed term in the language is a name, but an open term doesn't denote anything (or that it denotes an undetermined object, which is the same).

    I would understand the rule of UI if is had the form $$\frac{\forall x A(x)}{A(C)}$$ where C is a metasymbol denoting any constant term of the language.

    Imho, to say that an open formula "x^2\geq0" is "true" (deducible), is like saying that the constant function $x\mapsto1$ "is" the number 1.

    – Sephi Jun 16 '19 at 10:36
  • 1
    @Sephi - basically, YES. A free variable in "$x$ is red" acts as a pronoun : "it is red". To check the truth value of the statement, we need "context". In the semantics of FOL, the way to formalize "contexts" is e.g. through variable assignment functions. – Mauro ALLEGRANZA Jun 16 '19 at 10:46
  • 1
    The version of UI with constant is too restrictive because we may have languages without individual constants. The general form is to instantiate it with $A(t)$, where $t$ is any term. Terms are always available, because every FOL language has at least individual variables. – Mauro ALLEGRANZA Jun 16 '19 at 10:48