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

Theorem omsmolem 8578
Description: Lemma for omsmo 8579. (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 6828 . . . 4 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
32eleq2d 2817 . . 3 (𝑦 = ∅ → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘∅)))
41, 3imbi12d 344 . 2 (𝑦 = ∅ → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))))
5 eleq2 2820 . . 3 (𝑦 = 𝑤 → (𝑧𝑦𝑧𝑤))
6 fveq2 6828 . . . 4 (𝑦 = 𝑤 → (𝐹𝑦) = (𝐹𝑤))
76eleq2d 2817 . . 3 (𝑦 = 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹𝑤)))
85, 7imbi12d 344 . 2 (𝑦 = 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))))
9 eleq2 2820 . . 3 (𝑦 = suc 𝑤 → (𝑧𝑦𝑧 ∈ suc 𝑤))
10 fveq2 6828 . . . 4 (𝑦 = suc 𝑤 → (𝐹𝑦) = (𝐹‘suc 𝑤))
1110eleq2d 2817 . . 3 (𝑦 = suc 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
129, 11imbi12d 344 . 2 (𝑦 = suc 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
13 noel 4287 . . . 4 ¬ 𝑧 ∈ ∅
1413pm2.21i 119 . . 3 (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))
1514a1i 11 . 2 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅)))
16 vex 3440 . . . . . 6 𝑧 ∈ V
1716elsuc 6384 . . . . 5 (𝑧 ∈ suc 𝑤 ↔ (𝑧𝑤𝑧 = 𝑤))
18 fveq2 6828 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹𝑥) = (𝐹𝑤))
19 suceq 6380 . . . . . . . . . . . . 13 (𝑥 = 𝑤 → suc 𝑥 = suc 𝑤)
2019fveq2d 6832 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹‘suc 𝑥) = (𝐹‘suc 𝑤))
2118, 20eleq12d 2825 . . . . . . . . . . 11 (𝑥 = 𝑤 → ((𝐹𝑥) ∈ (𝐹‘suc 𝑥) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
2221rspccva 3571 . . . . . . . . . 10 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
2322adantll 714 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
24 peano2b 7819 . . . . . . . . . . . . 13 (𝑤 ∈ ω ↔ suc 𝑤 ∈ ω)
25 ffvelcdm 7020 . . . . . . . . . . . . 13 ((𝐹:ω⟶𝐴 ∧ suc 𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
2624, 25sylan2b 594 . . . . . . . . . . . 12 ((𝐹:ω⟶𝐴𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
27 ssel 3923 . . . . . . . . . . . 12 (𝐴 ⊆ On → ((𝐹‘suc 𝑤) ∈ 𝐴 → (𝐹‘suc 𝑤) ∈ On))
28 ontr1 6359 . . . . . . . . . . . . 13 ((𝐹‘suc 𝑤) ∈ On → (((𝐹𝑧) ∈ (𝐹𝑤) ∧ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
2928expcomd 416 . . . . . . . . . . . 12 ((𝐹‘suc 𝑤) ∈ On → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3026, 27, 29syl56 36 . . . . . . . . . . 11 (𝐴 ⊆ On → ((𝐹:ω⟶𝐴𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
3130impl 455 . . . . . . . . . 10 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3231adantlr 715 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3323, 32mpd 15 . . . . . . . 8 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3433imim2d 57 . . . . . . 7 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3534imp 406 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
36 fveq2 6828 . . . . . . . . 9 (𝑧 = 𝑤 → (𝐹𝑧) = (𝐹𝑤))
3736eleq1d 2816 . . . . . . . 8 (𝑧 = 𝑤 → ((𝐹𝑧) ∈ (𝐹‘suc 𝑤) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
3822, 37syl5ibrcom 247 . . . . . . 7 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3938ad4ant23 753 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4035, 39jaod 859 . . . . 5 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → ((𝑧𝑤𝑧 = 𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4117, 40biimtrid 242 . . . 4 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4241exp31 419 . . 3 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑤 ∈ ω → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
4342com12 32 . 2 (𝑤 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
444, 8, 12, 15, 43finds2 7834 1 (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  wo 847   = wceq 1541  wcel 2111  wral 3047  wss 3897  c0 4282  Oncon0 6312  suc csuc 6314  wf 6483  cfv 6487  ωcom 7802
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-12 2180  ax-ext 2703  ax-sep 5236  ax-nul 5246  ax-pr 5372  ax-un 7674
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-ne 2929  df-ral 3048  df-rex 3057  df-rab 3396  df-v 3438  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3917  df-nul 4283  df-if 4475  df-pw 4551  df-sn 4576  df-pr 4578  df-op 4582  df-uni 4859  df-br 5094  df-opab 5156  df-tr 5201  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-ord 6315  df-on 6316  df-lim 6317  df-suc 6318  df-iota 6443  df-fun 6489  df-fn 6490  df-f 6491  df-fv 6495  df-om 7803
This theorem is referenced by:  omsmo  8579
  Copyright terms: Public domain W3C validator