Goranko
Logic as a Tool Chapter 3: Understanding First-order Logic 3.3 - - PowerPoint PPT Presentation
Logic as a Tool Chapter 3: Understanding First-order Logic 3.3 - - PowerPoint PPT Presentation
Logic as a Tool Chapter 3: Understanding First-order Logic 3.3 Basic grammar and use of first-order languages Valentin Goranko Stockholm University November 2020 Goranko Free and bound variables intuitively Goranko Free and bound variables
Goranko
Free and bound variables intuitively
Goranko
Free and bound variables intuitively
Two essentially different ways in which we use individual variables in first-order formulae:
Goranko
Free and bound variables intuitively
Two essentially different ways in which we use individual variables in first-order formulae:
- 1. Free variables: used to denote unknown or unspecified objects, as in
(5 < x) ∨ (x2 + x − 2 = 0)
Goranko
Free and bound variables intuitively
Two essentially different ways in which we use individual variables in first-order formulae:
- 1. Free variables: used to denote unknown or unspecified objects, as in
(5 < x) ∨ (x2 + x − 2 = 0)
- r L(m(x), x)
( “The mother of x loves x”)
Goranko
Free and bound variables intuitively
Two essentially different ways in which we use individual variables in first-order formulae:
- 1. Free variables: used to denote unknown or unspecified objects, as in
(5 < x) ∨ (x2 + x − 2 = 0)
- r L(m(x), x)
( “The mother of x loves x”)
- 2. Bound variables: used to quantify, as in
∃x((5 < x) ∨ (x2 + x − 2 = 0)) and ∀x((5 < x) ∨ (x2 + x − 2 = 0))
Goranko
Free and bound variables intuitively
Two essentially different ways in which we use individual variables in first-order formulae:
- 1. Free variables: used to denote unknown or unspecified objects, as in
(5 < x) ∨ (x2 + x − 2 = 0)
- r L(m(x), x)
( “The mother of x loves x”)
- 2. Bound variables: used to quantify, as in
∃x((5 < x) ∨ (x2 + x − 2 = 0)) and ∀x((5 < x) ∨ (x2 + x − 2 = 0)) and ∀xL(m(x), x) ( “Everybody is loved by his/her mother”)
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))).
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))).
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))).
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). An occurrence of the quantifier Q followed by a variable x in a formula A is said to bind the variable x in A.
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). An occurrence of the quantifier Q followed by a variable x in a formula A is said to bind the variable x in A. An occurrence of a variable x in a formula A is bound if it is in the scope
- f an occurrence of a quantifier Q binding x in A.
Goranko
Scope of a quantifier. Bound and free occurrences of variables.
Scope of (an occurrence of) a quantifier Q in a given formula A (where Q ∈ {∀, ∃}) is the unique subformula QxB beginning with that
- ccurrence of the quantifier Q in A.
Some examples of scopes of quantifiers: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))). An occurrence of the quantifier Q followed by a variable x in a formula A is said to bind the variable x in A. An occurrence of a variable x in a formula A is bound if it is in the scope
- f an occurrence of a quantifier Q binding x in A.
Otherwise, that occurrence of x is free in A.
Goranko
Which quantifiers binds which occurrences of variables?
Goranko
Which quantifiers binds which occurrences of variables?
A bound occurrence of a variable x in a given formula A is bound by the innermost occurrence of a quantifier Qx in A, in the scope of which it
- ccurs.
Goranko
Which quantifiers binds which occurrences of variables?
A bound occurrence of a variable x in a given formula A is bound by the innermost occurrence of a quantifier Qx in A, in the scope of which it
- ccurs.
For example, the first occurrence of ∀ in the following formula binds the first 3 occurrences of x: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))),
Goranko
Which quantifiers binds which occurrences of variables?
A bound occurrence of a variable x in a given formula A is bound by the innermost occurrence of a quantifier Qx in A, in the scope of which it
- ccurs.
For example, the first occurrence of ∀ in the following formula binds the first 3 occurrences of x: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))), whereas the occurrence of ∃ binds the last 2 occurrences of x: ∀x((x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3)))).
Goranko
Bound and free variables in a formula
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A.
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A. Then x is said to be a bound variable of A.
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A. Then x is said to be a bound variable of A.
A variable x is free in the formula A if it has at least one free occurrence in A.
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A. Then x is said to be a bound variable of A.
A variable x is free in the formula A if it has at least one free occurrence in A. Then x is said to be a free variable of A.
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A. Then x is said to be a bound variable of A.
A variable x is free in the formula A if it has at least one free occurrence in A. Then x is said to be a free variable of A. For instance, in the formula A = (x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3))). the first two occurrences of x are free, while all other occurrences of variables are bound. Thus, the only free variable in A is x, while both x and y are bound in A.
Goranko
Bound and free variables in a formula
A variable x is bound in the formula A if it has at least one bound
- ccurrence in A. Then x is said to be a bound variable of A.
A variable x is free in the formula A if it has at least one free occurrence in A. Then x is said to be a free variable of A. For instance, in the formula A = (x > 5) → ∀y(y < 5 → (y < x ∧ ∃x(x < 3))). the first two occurrences of x are free, while all other occurrences of variables are bound. Thus, the only free variable in A is x, while both x and y are bound in A. Note that the same variable can be both free and bound in the same formula.
Goranko
The sets of bound and free variables in a formula
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
- 1. For every atomic formula A = p(t1, ..., tn),
FVAR(A) := VAR(t1) ∪ . . . ∪ VAR(tn).
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
- 1. For every atomic formula A = p(t1, ..., tn),
FVAR(A) := VAR(t1) ∪ . . . ∪ VAR(tn).
- 2. If A is a formula in L then FVAR(¬A) := FVAR(A).
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
- 1. For every atomic formula A = p(t1, ..., tn),
FVAR(A) := VAR(t1) ∪ . . . ∪ VAR(tn).
- 2. If A is a formula in L then FVAR(¬A) := FVAR(A).
- 3. If A and B are formulae in L and • ∈ {∧, ∨, →, ↔} then
FVAR(A • B) := FVAR(A) ∪ FVAR(B)
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
- 1. For every atomic formula A = p(t1, ..., tn),
FVAR(A) := VAR(t1) ∪ . . . ∪ VAR(tn).
- 2. If A is a formula in L then FVAR(¬A) := FVAR(A).
- 3. If A and B are formulae in L and • ∈ {∧, ∨, →, ↔} then
FVAR(A • B) := FVAR(A) ∪ FVAR(B)
- 4. If A is a formula in L and x is an individual variable, then
FVAR(∀xA) = FVAR(∃xA) = FVAR(A) \ {x} .
Goranko
The sets of bound and free variables in a formula
Definition (The set of free variables in a formula)
Let L be any first-order language. The mapping FVAR : FOR(L) → P(VAR) (where P(VAR) is the powerset of VAR) is defined recursively on the structure of formulae in L as follows.
- 1. For every atomic formula A = p(t1, ..., tn),
FVAR(A) := VAR(t1) ∪ . . . ∪ VAR(tn).
- 2. If A is a formula in L then FVAR(¬A) := FVAR(A).
- 3. If A and B are formulae in L and • ∈ {∧, ∨, →, ↔} then
FVAR(A • B) := FVAR(A) ∪ FVAR(B)
- 4. If A is a formula in L and x is an individual variable, then
FVAR(∀xA) = FVAR(∃xA) = FVAR(A) \ {x} . Exercise: define similarly the set of bound variables BVAR(A) for every formula A.
Goranko
Open and closed formulae
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A.
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A. That is, if v1, v2 are variable assignments in S such that v1 |FVAR(A)= v2 |FVAR(A), then S, v1 | = A iff S, v2 | = A.
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A. That is, if v1, v2 are variable assignments in S such that v1 |FVAR(A)= v2 |FVAR(A), then S, v1 | = A iff S, v2 | = A. Proof: by structural induction of formulae, using the recursive definition
- f FVAR(A). Exercise.
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A. That is, if v1, v2 are variable assignments in S such that v1 |FVAR(A)= v2 |FVAR(A), then S, v1 | = A iff S, v2 | = A. Proof: by structural induction of formulae, using the recursive definition
- f FVAR(A). Exercise.
An open formula is a formula with no bound variables, i.e. not containing any occurrences of quantifiers.
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A. That is, if v1, v2 are variable assignments in S such that v1 |FVAR(A)= v2 |FVAR(A), then S, v1 | = A iff S, v2 | = A. Proof: by structural induction of formulae, using the recursive definition
- f FVAR(A). Exercise.
An open formula is a formula with no bound variables, i.e. not containing any occurrences of quantifiers. A closed formula, or a sentence is a formula with no free variables.
Goranko
Open and closed formulae
Theorem
The truth of a formula A in a given structure S only depends on the assignment of values to the free variables occurring in A. That is, if v1, v2 are variable assignments in S such that v1 |FVAR(A)= v2 |FVAR(A), then S, v1 | = A iff S, v2 | = A. Proof: by structural induction of formulae, using the recursive definition
- f FVAR(A). Exercise.
An open formula is a formula with no bound variables, i.e. not containing any occurrences of quantifiers. A closed formula, or a sentence is a formula with no free variables. Thus, the truth of a sentence in a structure does not depend on the variable assignment.
Goranko
Using bound and free variables in a formula
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment)
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment), while bound variables only play a dummy role and can be replaced (with care!) by one another.
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment), while bound variables only play a dummy role and can be replaced (with care!) by one another. For instance, the sentence ∃x(5 < x ∧ x2 + x − 2 = 0) means exactly the same as ∃y(5 < y ∧ y2 + y − 2 = 0), in the sense that both formulae always have the same truth value.
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment), while bound variables only play a dummy role and can be replaced (with care!) by one another. For instance, the sentence ∃x(5 < x ∧ x2 + x − 2 = 0) means exactly the same as ∃y(5 < y ∧ y2 + y − 2 = 0), in the sense that both formulae always have the same truth value. Likewise, ∀x(5 < x ∨ x2 + x − 2 = 0) means the same as ∀y(5 < y ∨ y2 + y − 2 = 0).
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment), while bound variables only play a dummy role and can be replaced (with care!) by one another. For instance, the sentence ∃x(5 < x ∧ x2 + x − 2 = 0) means exactly the same as ∃y(5 < y ∧ y2 + y − 2 = 0), in the sense that both formulae always have the same truth value. Likewise, ∀x(5 < x ∨ x2 + x − 2 = 0) means the same as ∀y(5 < y ∨ y2 + y − 2 = 0). On the other hand, the meaning of 5 < x ∧ x2 + x − 2 = 0 is essentially different from the meaning of 5 < y ∧ y2 + y − 2 = 0.
Goranko
Using bound and free variables in a formula
Free variables have their own values in a given formula (determined by a variable assignment), while bound variables only play a dummy role and can be replaced (with care!) by one another. For instance, the sentence ∃x(5 < x ∧ x2 + x − 2 = 0) means exactly the same as ∃y(5 < y ∧ y2 + y − 2 = 0), in the sense that both formulae always have the same truth value. Likewise, ∀x(5 < x ∨ x2 + x − 2 = 0) means the same as ∀y(5 < y ∨ y2 + y − 2 = 0). On the other hand, the meaning of 5 < x ∧ x2 + x − 2 = 0 is essentially different from the meaning of 5 < y ∧ y2 + y − 2 = 0. Both formulae state the same, but about different individuals.
Goranko
Reusing variables as free and bound in a formula
Goranko
Reusing variables as free and bound in a formula
The same variable can occur both free and bound in a formula: x > 5 → ∀x(2x > x).
Goranko
Reusing variables as free and bound in a formula
The same variable can occur both free and bound in a formula: x > 5 → ∀x(2x > x). However, the free occurrence of x is unrelated to the bound occurrences
- f x:
x > 5 → ∀x(2x > x).
Goranko
Reusing variables as free and bound in a formula
The same variable can occur both free and bound in a formula: x > 5 → ∀x(2x > x). However, the free occurrence of x is unrelated to the bound occurrences
- f x:
x > 5 → ∀x(2x > x). Thus, the formula above has the same meaning as x > 5 → ∀y(2y > y),
Goranko
Reusing variables as free and bound in a formula
The same variable can occur both free and bound in a formula: x > 5 → ∀x(2x > x). However, the free occurrence of x is unrelated to the bound occurrences
- f x:
x > 5 → ∀x(2x > x). Thus, the formula above has the same meaning as x > 5 → ∀y(2y > y), but not the same meaning as y > 5 → ∀x(2x > x).
Goranko
Binding a variable by different quantifiers in a formula
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x).
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x). Again, the occurrences of x, bound by the first quantifier, have nothing to do with those bound by the second one.
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x). Again, the occurrences of x, bound by the first quantifier, have nothing to do with those bound by the second one. For instance, the two x’s claimed to exist in the formula ∃x(x > 5) ∧ ∃x(x < 3). need not (and, in fact, cannot) be the same.
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x). Again, the occurrences of x, bound by the first quantifier, have nothing to do with those bound by the second one. For instance, the two x’s claimed to exist in the formula ∃x(x > 5) ∧ ∃x(x < 3). need not (and, in fact, cannot) be the same. Thus, the formula above has the same meaning as each of ∃y(y > 5) ∧ ∃x(x < 3),
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x). Again, the occurrences of x, bound by the first quantifier, have nothing to do with those bound by the second one. For instance, the two x’s claimed to exist in the formula ∃x(x > 5) ∧ ∃x(x < 3). need not (and, in fact, cannot) be the same. Thus, the formula above has the same meaning as each of ∃y(y > 5) ∧ ∃x(x < 3), ∃x(x > 5) ∧ ∃z(z < 3),
Goranko
Binding a variable by different quantifiers in a formula
Different occurrences of the same variable can be bound by different quantifiers: ∃x(x > 5) ∨ ∀x(2x > x). Again, the occurrences of x, bound by the first quantifier, have nothing to do with those bound by the second one. For instance, the two x’s claimed to exist in the formula ∃x(x > 5) ∧ ∃x(x < 3). need not (and, in fact, cannot) be the same. Thus, the formula above has the same meaning as each of ∃y(y > 5) ∧ ∃x(x < 3), ∃x(x > 5) ∧ ∃z(z < 3), ∃y(y > 5) ∧ ∃z(z < 3).
Goranko
Nested bindings of a variable in a formula
Goranko
Nested bindings of a variable in a formula
Different bindings of the same variable can be nested, e.g.: ∀x(x > 5 → ∃x(x < 3)).
Goranko
Nested bindings of a variable in a formula
Different bindings of the same variable can be nested, e.g.: ∀x(x > 5 → ∃x(x < 3)). Again, the occurrences of x in the subformula ∃x(x < 3) are bound by ∃ and not related to the first two occurrences of x, bound by ∀: ∀x(x > 5 → ∃x(x < 3)).
Goranko
Nested bindings of a variable in a formula
Different bindings of the same variable can be nested, e.g.: ∀x(x > 5 → ∃x(x < 3)). Again, the occurrences of x in the subformula ∃x(x < 3) are bound by ∃ and not related to the first two occurrences of x, bound by ∀: ∀x(x > 5 → ∃x(x < 3)). Thus, the formula above has the same meaning as each of ∀x(x > 5 → ∃y(y < 3)),
Goranko
Nested bindings of a variable in a formula
Different bindings of the same variable can be nested, e.g.: ∀x(x > 5 → ∃x(x < 3)). Again, the occurrences of x in the subformula ∃x(x < 3) are bound by ∃ and not related to the first two occurrences of x, bound by ∀: ∀x(x > 5 → ∃x(x < 3)). Thus, the formula above has the same meaning as each of ∀x(x > 5 → ∃y(y < 3)), ∀z(z > 5 → ∃x(x < 3)),
Goranko
Nested bindings of a variable in a formula
Different bindings of the same variable can be nested, e.g.: ∀x(x > 5 → ∃x(x < 3)). Again, the occurrences of x in the subformula ∃x(x < 3) are bound by ∃ and not related to the first two occurrences of x, bound by ∀: ∀x(x > 5 → ∃x(x < 3)). Thus, the formula above has the same meaning as each of ∀x(x > 5 → ∃y(y < 3)), ∀z(z > 5 → ∃x(x < 3)), ∀z(z > 5 → ∃y(y < 3)).
Goranko
Renaming of a bound variable in a formula
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it.
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A.
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y))
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y))
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming:
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming: (z > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)),
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming: (z > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)), (x > 5) ∧ ∀z((z > 5) → ¬∃z(z < y)),
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming: (z > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)), (x > 5) ∧ ∀z((z > 5) → ¬∃z(z < y)), (x > 5) ∧ ∀x(x > 5 → ¬∃y(y < y)).
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming: (z > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)), (x > 5) ∧ ∀z((z > 5) → ¬∃z(z < y)), (x > 5) ∧ ∀x(x > 5 → ¬∃y(y < y)). Claim: The result of renaming a variable in a formula A always has the same truth value as A
Goranko
Renaming of a bound variable in a formula
Using the same variable for different purposes in a formula can be confusing, and is often unwanted, so we may want to eliminate it. Renaming of the variable x in a formula A is the substitution of all
- ccurrences of x bound by the same occurrence of a quantifier in A with
another variable, not occurring in A. E.g., a possible renaming of (x > 5) ∧ ∀x(x > 5 → ¬∃x(x < y)) is the formula (x > 5) ∧ ∀x(x > 5 → ¬∃z(z < y)) However, neither of the following formulae is a correct renaming: (z > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)), (x > 5) ∧ ∀z((z > 5) → ¬∃z(z < y)), (x > 5) ∧ ∀x(x > 5 → ¬∃y(y < y)). Claim: The result of renaming a variable in a formula A always has the same truth value as A, so it is logically equivalent to A.
Goranko
Clean formulae
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables.
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean,
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x)
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not.
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not. Claim: Every formula can be transformed into a clean formula by means of several consecutive renamings of variables.
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not. Claim: Every formula can be transformed into a clean formula by means of several consecutive renamings of variables. E.g., (x > 5) ∧ ∀x((x > 5) → ¬∃x(x < y))
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not. Claim: Every formula can be transformed into a clean formula by means of several consecutive renamings of variables. E.g., (x > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)) can be transformed into a clean formula as follows:
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not. Claim: Every formula can be transformed into a clean formula by means of several consecutive renamings of variables. E.g., (x > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)) can be transformed into a clean formula as follows: (x > 5) ∧ ∀x1((x1 > 5) → ¬∃x(x < y)),
Goranko
Clean formulae
A formula A is clean if no variable occurs both free and bound in A and every two occurrences of quantifiers bind different variables. Thus, ∃x(x > 5) ∧ ∃y(y < z) is clean, while ∃x(x > 5) ∧ ∃y(y < x) and ∃x(x > 5) ∧ ∃x(y < x) are not. Claim: Every formula can be transformed into a clean formula by means of several consecutive renamings of variables. E.g., (x > 5) ∧ ∀x((x > 5) → ¬∃x(x < y)) can be transformed into a clean formula as follows: (x > 5) ∧ ∀x1((x1 > 5) → ¬∃x(x < y)), (x > 5) ∧ ∀x1((x1 > 5) → ¬∃x2(x2 < y)).
Goranko
Substitution of a term for a variable in a formula
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x].
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y)))
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y))) we have A[f (y, z)/y] = ∀x(P(x, f (y, z)) → (¬Q(f (y, z)) ∨ ∃yP(x, y))),
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y))) we have A[f (y, z)/y] = ∀x(P(x, f (y, z)) → (¬Q(f (y, z)) ∨ ∃yP(x, y))), while A[f (y, z)/x] = A because x does not occur free in A.
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y))) we have A[f (y, z)/y] = ∀x(P(x, f (y, z)) → (¬Q(f (y, z)) ∨ ∃yP(x, y))), while A[f (y, z)/x] = A because x does not occur free in A. Intuitively, A[t/x] is supposed to say about the individual denoted by t the same as what A says about the individual denoted by x.
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y))) we have A[f (y, z)/y] = ∀x(P(x, f (y, z)) → (¬Q(f (y, z)) ∨ ∃yP(x, y))), while A[f (y, z)/x] = A because x does not occur free in A. Intuitively, A[t/x] is supposed to say about the individual denoted by t the same as what A says about the individual denoted by x. Question: is that always the case?
Goranko
Substitution of a term for a variable in a formula
Unform substitution of a term t for a variable x in a formula A means that all free occurrences x in A are simultaneously replaced by t. The result of the substitution is denoted A[t/x]. Example: given the formula A = ∀x(P(x, y) → (¬Q(y) ∨ ∃yP(x, y))) we have A[f (y, z)/y] = ∀x(P(x, f (y, z)) → (¬Q(f (y, z)) ∨ ∃yP(x, y))), while A[f (y, z)/x] = A because x does not occur free in A. Intuitively, A[t/x] is supposed to say about the individual denoted by t the same as what A says about the individual denoted by x. Question: is that always the case? Is a substitution of a term for a formula always ’safe’?
Goranko
Capture of a variable in substitution
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x.
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x. However, A[(y + 1)/x] = ∃y(y + 1 < y), which is false in N.
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x. However, A[(y + 1)/x] = ∃y(y + 1 < y), which is false in N. Therefore, the formula A[(y + 1)/x] does not say about the term y + 1 the same as what A says about x.
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x. However, A[(y + 1)/x] = ∃y(y + 1 < y), which is false in N. Therefore, the formula A[(y + 1)/x] does not say about the term y + 1 the same as what A says about x. What went wrong?
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x. However, A[(y + 1)/x] = ∃y(y + 1 < y), which is false in N. Therefore, the formula A[(y + 1)/x] does not say about the term y + 1 the same as what A says about x. What went wrong? The occurrence of y in the term y + 1 got captured by the quantifier ∃y, because we mixed the free and the bound uses of y.
Goranko
Capture of a variable in substitution
The formula A = ∃y(x < y) is true in N for any value of x. However, A[(y + 1)/x] = ∃y(y + 1 < y), which is false in N. Therefore, the formula A[(y + 1)/x] does not say about the term y + 1 the same as what A says about x. What went wrong? The occurrence of y in the term y + 1 got captured by the quantifier ∃y, because we mixed the free and the bound uses of y. Capture: when new occurrences of a variable y are introduced in the scope of a quantifier Qy occurring in the formula A as a result of substitution of a term t containing y for another variable x in A.
Goranko
Terms free for substitution for a variable in a formula
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A.
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples:
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z),
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z), resulting in A[f (x, y)/y] = ∀x(P(x, z) ∧ ∃yQ(y)) → P(f (x, y), z),
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z), resulting in A[f (x, y)/y] = ∀x(P(x, z) ∧ ∃yQ(y)) → P(f (x, y), z), but it is not free for substitution for z in A,
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z), resulting in A[f (x, y)/y] = ∀x(P(x, z) ∧ ∃yQ(y)) → P(f (x, y), z), but it is not free for substitution for z in A, resulting in A[f (x, y)/z] = ∀x(P(x, f (x, y)) ∧ ∃yQ(y)) → P(y, f (x, y)),
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z), resulting in A[f (x, y)/y] = ∀x(P(x, z) ∧ ∃yQ(y)) → P(f (x, y), z), but it is not free for substitution for z in A, resulting in A[f (x, y)/z] = ∀x(P(x, f (x, y)) ∧ ∃yQ(y)) → P(y, f (x, y)), because a capture occurs: A[f (x, y)/z] = ∀x(P(x, f (x, y)) ∧ ∃yQ(y)) → P(y, f (x, y)).
Goranko
Terms free for substitution for a variable in a formula
A term t is free for (substitution for) a variable x in a formula A, if no variable in t is captured by a quantifier when t is substituted for x in A. Examples: The term f (x, y) is free for substitution for y in the formula A = ∀x(P(x, z) ∧ ∃yQ(y)) → P(y, z), resulting in A[f (x, y)/y] = ∀x(P(x, z) ∧ ∃yQ(y)) → P(f (x, y), z), but it is not free for substitution for z in A, resulting in A[f (x, y)/z] = ∀x(P(x, f (x, y)) ∧ ∃yQ(y)) → P(y, f (x, y)), because a capture occurs: A[f (x, y)/z] = ∀x(P(x, f (x, y)) ∧ ∃yQ(y)) → P(y, f (x, y)). Note that every ground term (not containing variables), in particular every constant symbol, is always free for substitution.
Goranko
Renamings and substitutions in a formula
Goranko
Renamings and substitutions in a formula
NB: renaming and substitution are different operations: – renaming always acts on bound variables, – whereas substitution always acts on free variables.
Goranko
Renamings and substitutions in a formula
NB: renaming and substitution are different operations: – renaming always acts on bound variables, – whereas substitution always acts on free variables. Also, renamings preserve the formula up to logical equivalence, while substitutions do not.
Goranko
Renamings and substitutions in a formula
NB: renaming and substitution are different operations: – renaming always acts on bound variables, – whereas substitution always acts on free variables. Also, renamings preserve the formula up to logical equivalence, while substitutions do not. On the other hand, a suitable renaming of a formula can prepare it for a substitution, by rendering the term, which is to be substituted, free for such substitution in the renamed formula.
Goranko
Renamings and substitutions in a formula
NB: renaming and substitution are different operations: – renaming always acts on bound variables, – whereas substitution always acts on free variables. Also, renamings preserve the formula up to logical equivalence, while substitutions do not. On the other hand, a suitable renaming of a formula can prepare it for a substitution, by rendering the term, which is to be substituted, free for such substitution in the renamed formula. For instance, the term f (x, y) is not free for substitution for y in A = ∀x(P(x, y) ∧ ∃yQ(y)),
Goranko