"

The meaning of terms

As specified above, the terms of 1\mathcal{L}_1 are the constants and variables of 1\mathcal{L}_1. For 0\mathcal{L}_0, assigning a semantic value to any constant was done through the interpretation function of the structure 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle. This will be retained, so that the value of a constant 𝔠n\mathfrak{c}_{n} (nn \in \mathbb{N}) relative to the structure 𝐒\mathbf{S}, in other words (symbols), I(𝔠n)I(\mathfrak{c}_{n}), is just some member of 𝐃\mathbf{D}. But again, though variables have a function similar to constants, their semantic value is only temporarily assigned, and is otherwise variable. Accordingly, we do not use the interpretation function II to assign values to our variables, but a separate function 𝐚\mathbf{a} called a variable assignment.

The variable assignment function 𝐚\mathbf{a} assigns to each variable 𝐱n\mathbf{x}_{n} (nn \in \mathbb{N}) a member of 𝐃\mathbf{D}, like II does for constants. But unlike with II, we will introduce a device that will allow us to change the variable assignment inside a structure 𝐒\mathbf{S}. The basis of this is what is called an xx-variant assignment 𝐚\mathbf{a}' for an existing assignment 𝐚\mathbf{a}. Unsurprisingly, 𝐚\mathbf{a}' is called an xx-variant assignment of 𝐚\mathbf{a} because it differs from it in at most what it assigns to the variable xx. (It should be noted that in usual mathematical fashion, 𝐚\mathbf{a} may be its own (trivial) xx-variant assignment, in which case nothing is changed from the initial assignment.)

Let’s look at an example for this. Suppose you have a mathematical statement as follows: x×4<2×yx \times 4 < 2 \times y Here, we have multiple variables, so each assignment of values to the variables will assign a value to xx, and to yy. Suppose we assign the value 55 to xx and 1010 to yy. This will result in an incorrect statement, since 20<2020<20 is incorrect. So now take the xx-variant assignment that assigns 44 to xx, but otherwise leaves the assignment as it was. This time, we get a correct statement, since 16<2016 <20. Of course, we can also take a yy-variant assignment. And in general, not all xx– or yy-variant assignment will make the statement correct. For example, the yy-variant assignment (to the initial one) where y=5y=5 will clearly make it incorrect again.

We can make the above ideas more precise as follows:

Definition 7.1 (Variable assignment). Given a structure 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle, the function 𝐚:𝖵𝖠𝖱1𝐃\mathbf{a}: \textsf{VAR}_{\mathcal{L}_1} \to \mathbf{D} is a variable assignment in 𝐃\mathbf{D}. If 𝐚\mathbf{a}' is a variable assignment in 𝐃\mathbf{D} just like 𝐚\mathbf{a}, except possibly for some xx, 𝐚(x)𝐚(x)\mathbf{a}'(x)\neq \mathbf{a}(x), we call 𝐚\mathbf{a}' an xx-variant variable assignment of 𝐚\mathbf{a}. If 𝐚(x)=d\mathbf{a}'(x)=d (d𝐃d \in D), i.e., 𝐚\mathbf{a}' is the xx-variant variable assignment of 𝐚\mathbf{a} such that xx is sent to dd by 𝐚\mathbf{a}', we may also write 𝐚dx\mathbf{a}^x_d.

Let’s return to the general picture. Since some terms of the language 1\mathcal{L}_1 are variables, it won’t be enough to work solely with the interpretation function II to assign semantic values to our terms in 1\mathcal{L}_1 – we need a variable assignment too. Clearly, since these terms then go into forming atomic and complex formulas, we will need to relativize the semantic values of expressions of 1\mathcal{L}_1 both to a particular structure 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle and to a corresponding variable assignment 𝐚\mathbf{a} in 𝐃\mathbf{D} at any one time. We will introduce some new notation for this. In particular, if XX is any expression of 1\mathcal{L}_1, then its semantic value relative to a structure 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle and variable assignment 𝐚\mathbf{a} in 𝐃\mathbf{D} will be denoted: I(X)[𝐚]I(X)[\mathbf{a}] Using this notation, we can easily specify what it means to assign a semantic value to a term of 1\mathcal{L}_1 as follows:

Definition 7.2 (Term values). Let 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle be any ordered pair such that 𝐃\mathbf{D} is a non-empty set and II is defined for each c𝖢𝖮𝖭𝖲1c \in \mathsf{CONS}_{\mathcal{L}_1} so that I(c)𝐃I(c) \in \mathbf{D}. Let 𝐚\mathbf{a} be a variable assignment in 𝐃\mathbf{D} as above. Then, for each term t𝖳𝖤𝖱𝖬1t \in \mathsf{TERM}_{\mathcal{L}_1}, we define the value of tt in the structure 𝐒\mathbf{S} relative to the variable assignment 𝐚\mathbf{a} as follows:

  1. if t=xt=x for some x𝖵𝖠𝖱1x \in \textsf{VAR}_{\mathcal{L}_1}, I(t)[𝐚]=𝐚(t)I(t)[\mathbf{a}]=\mathbf{a}(t);

  2. if t=ct=c for some c𝖢𝖮𝖭𝖲1c \in \textsf{CONS}_{\mathcal{L}_1}, I(t)[𝐚]=I(c)I(t)[\mathbf{a}]=I(c).

Remark 7.1. Take some time to try and thoroughly understand the above definition. What it says is that if a term is a variable, then its value is taken care of by the variable assignment, while if it’s a constant, then the interpretation function decides.

Exercise 7.1. Let 𝐒=𝐃,I\mathbf{S}=\langle\mathbf{D}, I\rangle be such that 𝐃=\mathbf{D}=\mathbb{N}, I(𝔠n)=n×2I(\mathfrak{c}_{n})=n \times 2, and let 𝐚(𝐱n)=n+7\mathbf{a}(\mathbf{x}_{n})= n + 7 (nn \in \mathbb{N}). Then, determine for each of the expressions below which natural number they stand for. In each case, specify how you reduced the calculation to one of two options, in accordance with the definition.

  1. I(𝔠4)[𝐚]I(\mathfrak{c}_{4})[\mathbf{a}]

  2. I(𝐱4)[𝐚]I(\mathbf{x}_{4})[\mathbf{a}]

  3. I(𝐱2)[𝐚]I(\mathbf{x}_{2})[\mathbf{a}]

  4. I(𝐱5)[𝐚9𝐱5]I(\mathbf{x}_{5})[\mathbf{a}^{\mathbf{x}_{5}}_9]

  5. I(𝐱5)[𝐚4𝐱8]I(\mathbf{x}_{5})[\mathbf{a}^{\mathbf{x}_{8}}_4]


Remark 7.2. Your answers should look something like this: I(𝐱1)[𝐚]=𝐚(𝐱1)=1+7=8.I(\mathbf{x}_{1})[\mathbf{a}]=\mathbf{a}(\mathbf{x}_{1})=1+7=8.


One thing you may notice here is that variables may ‘see’ more of the domain than the constants of a language. For example, since I(𝔠n)=n×2I(\mathfrak{c}_{n})=n \times 2, no odd number in the domain will have a constant that refers to it. On the other hand, a variable may be assigned the value of an odd number nevertheless. In the above case, since 𝐚(𝐱n)=n+7\mathbf{a}(\mathbf{x}_{n})= n + 7, if nn is even, then the variable assignment 𝐚\mathbf{a} will assign it an odd number as its value. As we will see soon when we introduce quantifiers, at times, they will be able to see more of the domain than our constants, and this way, they can express more facts about a structure. Indeed, the consequences of this are at the core of many foundational theorems in logic.

License

Icon for the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

Learning Logic Backwards Copyright © by Peter Susanszky is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, except where otherwise noted.