| Metamath Proof Explorer |
< Previous
Next >
Related theorems GIF version |
| Description: Define proper
substitution. Remark 9.1 in [Megill] p. 447
(p. 15 of the
preprint). For our notation, we use [y / x]φ to mean "the wff
that results when y is properly
substituted for x in the wff
φ." This notation was
introduced in Haskell B. Curry's
Foundations of Mathematical Logic (1977), p. 316 and is frequently
used in textbooks of lambda calculus and combinatory logic. This
notation improves the common but ambiguous notation, "φ(y) is
the wff that results when y is
properly substituted for x in
φ(x)". For example, if the original φ(x) is
x = y,
then φ(y) is y =
y, from which we obtain that φ(x)
is x = x. So what exactly does φ(x)
mean? Curry's notation
solves this problem.
In most books, proper substitution has a somewhat complicated recursive definition with multiple cases based on the occurrences of free and bound variables in the wff. Instead we use a remarkable little formula that is exactly equivalent and gives us a single direct definition. We later prove that our definition has the properties we expect of proper substitution (see theorems sbequ 877, sbcom2 992 and sbid2v 993). Note that our definition is valid even when x and y are replaced with the same variable, as sbid 868 shows. We achieve this by having x free in the first conjunct and bound in the second. We can also achieve this by using a dummy variable, as the alternate definition sb7 991 shows (which some logicians may prefer because it doesn't mix free and bound variables). When x and y are distinct, we can express proper substitution with the simpler expressions of sb5 988 and sb6 989. There are no restrictions on what variables may occur in φ. |
| Ref | Expression |
|---|---|
| df-sb | ⊢ ([y / x]φ ↔ ((x = y → φ) ∧ ∃x(x = y ∧ φ))) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | wph | . . 3 wff φ | |
| 2 | vx | . . 3 set x | |
| 3 | vy | . . 3 set y | |
| 4 | 1, 2, 3 | wsb 852 | . 2 wff [y / x]φ |
| 5 | 2, 3 | weq 797 | . . . 4 wff x = y |
| 6 | 5, 1 | wi 2 | . . 3 wff (x = y → φ) |
| 7 | 5, 1 | wa 196 | . . . 4 wff (x = y ∧ φ) |
| 8 | 7, 2 | wex 678 | . . 3 wff ∃x(x = y ∧ φ) |
| 9 | 6, 8 | wa 196 | . 2 wff ((x = y → φ) ∧ ∃x(x = y ∧ φ)) |
| 10 | 4, 9 | wb 127 | 1 wff ([y / x]φ ↔ ((x = y → φ) ∧ ∃x(x = y ∧ φ))) |
| Colors of variables: wff set class |
| This definition is referenced by: sbimi 854 del43 856 sb1 858 sb2 859 sbequ1 863 sbequ2 864 sbn2 881 |