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

Theorem omsmolem 7938
Description: Lemma for omsmo 7939. (Contributed by NM, 30-Nov-2003.) (Revised by David Abernethy, 1-Jan-2014.)
Assertion
Ref Expression
omsmolem (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Distinct variable groups:   𝑦,𝑧,𝐴   𝑥,𝑦,𝑧,𝐹
Allowed substitution hint:   𝐴(𝑥)

Proof of Theorem omsmolem
Dummy variable 𝑤 is distinct from all other variables.
StepHypRef Expression
1 eleq2 2833 . . 3 (𝑦 = ∅ → (𝑧𝑦𝑧 ∈ ∅))
2 fveq2 6375 . . . 4 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
32eleq2d 2830 . . 3 (𝑦 = ∅ → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘∅)))
41, 3imbi12d 335 . 2 (𝑦 = ∅ → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))))
5 eleq2 2833 . . 3 (𝑦 = 𝑤 → (𝑧𝑦𝑧𝑤))
6 fveq2 6375 . . . 4 (𝑦 = 𝑤 → (𝐹𝑦) = (𝐹𝑤))
76eleq2d 2830 . . 3 (𝑦 = 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹𝑤)))
85, 7imbi12d 335 . 2 (𝑦 = 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))))
9 eleq2 2833 . . 3 (𝑦 = suc 𝑤 → (𝑧𝑦𝑧 ∈ suc 𝑤))
10 fveq2 6375 . . . 4 (𝑦 = suc 𝑤 → (𝐹𝑦) = (𝐹‘suc 𝑤))
1110eleq2d 2830 . . 3 (𝑦 = suc 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
129, 11imbi12d 335 . 2 (𝑦 = suc 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
13 noel 4083 . . . 4 ¬ 𝑧 ∈ ∅
1413pm2.21i 117 . . 3 (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))
1514a1i 11 . 2 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅)))
16 vex 3353 . . . . . 6 𝑧 ∈ V
1716elsuc 5977 . . . . 5 (𝑧 ∈ suc 𝑤 ↔ (𝑧𝑤𝑧 = 𝑤))
18 fveq2 6375 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹𝑥) = (𝐹𝑤))
19 suceq 5973 . . . . . . . . . . . . 13 (𝑥 = 𝑤 → suc 𝑥 = suc 𝑤)
2019fveq2d 6379 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹‘suc 𝑥) = (𝐹‘suc 𝑤))
2118, 20eleq12d 2838 . . . . . . . . . . 11 (𝑥 = 𝑤 → ((𝐹𝑥) ∈ (𝐹‘suc 𝑥) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
2221rspccva 3460 . . . . . . . . . 10 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
2322adantll 705 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
24 peano2b 7279 . . . . . . . . . . . . 13 (𝑤 ∈ ω ↔ suc 𝑤 ∈ ω)
25 ffvelrn 6547 . . . . . . . . . . . . 13 ((𝐹:ω⟶𝐴 ∧ suc 𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
2624, 25sylan2b 587 . . . . . . . . . . . 12 ((𝐹:ω⟶𝐴𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
27 ssel 3755 . . . . . . . . . . . 12 (𝐴 ⊆ On → ((𝐹‘suc 𝑤) ∈ 𝐴 → (𝐹‘suc 𝑤) ∈ On))
28 ontr1 5954 . . . . . . . . . . . . 13 ((𝐹‘suc 𝑤) ∈ On → (((𝐹𝑧) ∈ (𝐹𝑤) ∧ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
2928expcomd 406 . . . . . . . . . . . 12 ((𝐹‘suc 𝑤) ∈ On → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3026, 27, 29syl56 36 . . . . . . . . . . 11 (𝐴 ⊆ On → ((𝐹:ω⟶𝐴𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
3130impl 447 . . . . . . . . . 10 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3231adantlr 706 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3323, 32mpd 15 . . . . . . . 8 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3433imim2d 57 . . . . . . 7 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3534imp 395 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
36 fveq2 6375 . . . . . . . . . 10 (𝑧 = 𝑤 → (𝐹𝑧) = (𝐹𝑤))
3736eleq1d 2829 . . . . . . . . 9 (𝑧 = 𝑤 → ((𝐹𝑧) ∈ (𝐹‘suc 𝑤) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
3822, 37syl5ibrcom 238 . . . . . . . 8 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3938adantll 705 . . . . . . 7 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4039adantr 472 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4135, 40jaod 885 . . . . 5 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → ((𝑧𝑤𝑧 = 𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4217, 41syl5bi 233 . . . 4 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4342exp31 410 . . 3 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑤 ∈ ω → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
4443com12 32 . 2 (𝑤 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
454, 8, 12, 15, 44finds2 7292 1 (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 384  wo 873   = wceq 1652  wcel 2155  wral 3055  wss 3732  c0 4079  Oncon0 5908  suc csuc 5910  wf 6064  cfv 6068  ωcom 7263
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2070  ax-7 2105  ax-8 2157  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743  ax-sep 4941  ax-nul 4949  ax-pr 5062  ax-un 7147
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3or 1108  df-3an 1109  df-tru 1656  df-ex 1875  df-nf 1879  df-sb 2063  df-mo 2565  df-eu 2582  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-ne 2938  df-ral 3060  df-rex 3061  df-rab 3064  df-v 3352  df-sbc 3597  df-dif 3735  df-un 3737  df-in 3739  df-ss 3746  df-pss 3748  df-nul 4080  df-if 4244  df-pw 4317  df-sn 4335  df-pr 4337  df-tp 4339  df-op 4341  df-uni 4595  df-br 4810  df-opab 4872  df-tr 4912  df-id 5185  df-eprel 5190  df-po 5198  df-so 5199  df-fr 5236  df-we 5238  df-xp 5283  df-rel 5284  df-cnv 5285  df-co 5286  df-dm 5287  df-rn 5288  df-ord 5911  df-on 5912  df-lim 5913  df-suc 5914  df-iota 6031  df-fun 6070  df-fn 6071  df-f 6072  df-fv 6076  df-om 7264
This theorem is referenced by:  omsmo  7939
  Copyright terms: Public domain W3C validator