 Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-sb Structured version   Visualization version   GIF version

Definition df-sb 1867
 Description: Define proper substitution. Remark 9.1 in [Megill] p. 447 (p. 15 of the preprint). For our notation, we use [𝑦 / 𝑥]𝜑 to mean "the wff that results from the proper substitution of 𝑦 for 𝑥 in the wff 𝜑." That is, 𝑦 properly replaces 𝑥. For example, [𝑥 / 𝑦]𝑧 ∈ 𝑦 is the same as 𝑧 ∈ 𝑥, as shown in elsb4 2422. We can also use [𝑦 / 𝑥]𝜑 in place of the "free for" side condition used in traditional predicate calculus; see, for example, stdpc4 2340. Our 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, "𝜑(𝑦) is the wff that results when 𝑦 is properly substituted for 𝑥 in 𝜑(𝑥)." For example, if the original 𝜑(𝑥) is 𝑥 = 𝑦, then 𝜑(𝑦) is 𝑦 = 𝑦, from which we obtain that 𝜑(𝑥) is 𝑥 = 𝑥. So what exactly does 𝜑(𝑥) 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 single formula that is exactly equivalent and gives us a direct definition. We later prove that our definition has the properties we expect of proper substitution (see theorems sbequ 2363, sbcom2 2432 and sbid2v 2444). Note that our definition is valid even when 𝑥 and 𝑦 are replaced with the same variable, as sbid 2099 shows. We achieve this by having 𝑥 free in the first conjunct and bound in the second. We can also achieve this by using a dummy variable, as the alternate definition dfsb7 2442 shows (which some logicians may prefer because it doesn't mix free and bound variables). Another version that mixes free and bound variables is dfsb3 2361. When 𝑥 and 𝑦 are distinct, we can express proper substitution with the simpler expressions of sb5 2417 and sb6 2416. There are no restrictions on any of the variables, including what variables may occur in wff 𝜑. (Contributed by NM, 10-May-1993.)
Assertion
Ref Expression
df-sb ([𝑦 / 𝑥]𝜑 ↔ ((𝑥 = 𝑦𝜑) ∧ ∃𝑥(𝑥 = 𝑦𝜑)))

Detailed syntax breakdown of Definition df-sb
StepHypRef Expression
1 wph . . 3 wff 𝜑
2 vx . . 3 setvar 𝑥
3 vy . . 3 setvar 𝑦
41, 2, 3wsb 1866 . 2 wff [𝑦 / 𝑥]𝜑
52, 3weq 1860 . . . 4 wff 𝑥 = 𝑦
65, 1wi 4 . . 3 wff (𝑥 = 𝑦𝜑)
75, 1wa 382 . . . 4 wff (𝑥 = 𝑦𝜑)
87, 2wex 1694 . . 3 wff 𝑥(𝑥 = 𝑦𝜑)
96, 8wa 382 . 2 wff ((𝑥 = 𝑦𝜑) ∧ ∃𝑥(𝑥 = 𝑦𝜑))
104, 9wb 194 1 wff ([𝑦 / 𝑥]𝜑 ↔ ((𝑥 = 𝑦𝜑) ∧ ∃𝑥(𝑥 = 𝑦𝜑)))
 Colors of variables: wff setvar class This definition is referenced by:  sbequ2  1868  sb1  1869  sbequ8  1871  sbimi  1872  sbequ1  2095  sb2  2339  drsb1  2364  sbn  2378  subsym1  31402  bj-sb2v  31747  bj-dfsb2  31819  frege55b  37007
 Copyright terms: Public domain W3C validator