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

Theorem omsmolem 8658
Description: Lemma for omsmo 8659. (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 2820 . . 3 (𝑦 = ∅ → (𝑧𝑦𝑧 ∈ ∅))
2 fveq2 6890 . . . 4 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
32eleq2d 2817 . . 3 (𝑦 = ∅ → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘∅)))
41, 3imbi12d 343 . 2 (𝑦 = ∅ → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))))
5 eleq2 2820 . . 3 (𝑦 = 𝑤 → (𝑧𝑦𝑧𝑤))
6 fveq2 6890 . . . 4 (𝑦 = 𝑤 → (𝐹𝑦) = (𝐹𝑤))
76eleq2d 2817 . . 3 (𝑦 = 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹𝑤)))
85, 7imbi12d 343 . 2 (𝑦 = 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))))
9 eleq2 2820 . . 3 (𝑦 = suc 𝑤 → (𝑧𝑦𝑧 ∈ suc 𝑤))
10 fveq2 6890 . . . 4 (𝑦 = suc 𝑤 → (𝐹𝑦) = (𝐹‘suc 𝑤))
1110eleq2d 2817 . . 3 (𝑦 = suc 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
129, 11imbi12d 343 . 2 (𝑦 = suc 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
13 noel 4329 . . . 4 ¬ 𝑧 ∈ ∅
1413pm2.21i 119 . . 3 (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))
1514a1i 11 . 2 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅)))
16 vex 3476 . . . . . 6 𝑧 ∈ V
1716elsuc 6433 . . . . 5 (𝑧 ∈ suc 𝑤 ↔ (𝑧𝑤𝑧 = 𝑤))
18 fveq2 6890 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹𝑥) = (𝐹𝑤))
19 suceq 6429 . . . . . . . . . . . . 13 (𝑥 = 𝑤 → suc 𝑥 = suc 𝑤)
2019fveq2d 6894 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹‘suc 𝑥) = (𝐹‘suc 𝑤))
2118, 20eleq12d 2825 . . . . . . . . . . 11 (𝑥 = 𝑤 → ((𝐹𝑥) ∈ (𝐹‘suc 𝑥) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
2221rspccva 3610 . . . . . . . . . 10 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
2322adantll 710 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
24 peano2b 7874 . . . . . . . . . . . . 13 (𝑤 ∈ ω ↔ suc 𝑤 ∈ ω)
25 ffvelcdm 7082 . . . . . . . . . . . . 13 ((𝐹:ω⟶𝐴 ∧ suc 𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
2624, 25sylan2b 592 . . . . . . . . . . . 12 ((𝐹:ω⟶𝐴𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
27 ssel 3974 . . . . . . . . . . . 12 (𝐴 ⊆ On → ((𝐹‘suc 𝑤) ∈ 𝐴 → (𝐹‘suc 𝑤) ∈ On))
28 ontr1 6409 . . . . . . . . . . . . 13 ((𝐹‘suc 𝑤) ∈ On → (((𝐹𝑧) ∈ (𝐹𝑤) ∧ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
2928expcomd 415 . . . . . . . . . . . 12 ((𝐹‘suc 𝑤) ∈ On → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3026, 27, 29syl56 36 . . . . . . . . . . 11 (𝐴 ⊆ On → ((𝐹:ω⟶𝐴𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
3130impl 454 . . . . . . . . . 10 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3231adantlr 711 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3323, 32mpd 15 . . . . . . . 8 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3433imim2d 57 . . . . . . 7 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3534imp 405 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
36 fveq2 6890 . . . . . . . . 9 (𝑧 = 𝑤 → (𝐹𝑧) = (𝐹𝑤))
3736eleq1d 2816 . . . . . . . 8 (𝑧 = 𝑤 → ((𝐹𝑧) ∈ (𝐹‘suc 𝑤) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
3822, 37syl5ibrcom 246 . . . . . . 7 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3938ad4ant23 749 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4035, 39jaod 855 . . . . 5 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → ((𝑧𝑤𝑧 = 𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4117, 40biimtrid 241 . . . 4 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4241exp31 418 . . 3 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑤 ∈ ω → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
4342com12 32 . 2 (𝑤 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
444, 8, 12, 15, 43finds2 7893 1 (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 394  wo 843   = wceq 1539  wcel 2104  wral 3059  wss 3947  c0 4321  Oncon0 6363  suc csuc 6365  wf 6538  cfv 6542  ωcom 7857
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1911  ax-6 1969  ax-7 2009  ax-8 2106  ax-9 2114  ax-10 2135  ax-12 2169  ax-ext 2701  ax-sep 5298  ax-nul 5305  ax-pr 5426  ax-un 7727
This theorem depends on definitions:  df-bi 206  df-an 395  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2532  df-eu 2561  df-clab 2708  df-cleq 2722  df-clel 2808  df-ne 2939  df-ral 3060  df-rex 3069  df-rab 3431  df-v 3474  df-dif 3950  df-un 3952  df-in 3954  df-ss 3964  df-pss 3966  df-nul 4322  df-if 4528  df-pw 4603  df-sn 4628  df-pr 4630  df-op 4634  df-uni 4908  df-br 5148  df-opab 5210  df-tr 5265  df-id 5573  df-eprel 5579  df-po 5587  df-so 5588  df-fr 5630  df-we 5632  df-xp 5681  df-rel 5682  df-cnv 5683  df-co 5684  df-dm 5685  df-rn 5686  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6494  df-fun 6544  df-fn 6545  df-f 6546  df-fv 6550  df-om 7858
This theorem is referenced by:  omsmo  8659
  Copyright terms: Public domain W3C validator