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

Theorem omsmolem 8713
Description: Lemma for omsmo 8714. (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 6920 . . . 4 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
32eleq2d 2830 . . 3 (𝑦 = ∅ → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘∅)))
41, 3imbi12d 344 . 2 (𝑦 = ∅ → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))))
5 eleq2 2833 . . 3 (𝑦 = 𝑤 → (𝑧𝑦𝑧𝑤))
6 fveq2 6920 . . . 4 (𝑦 = 𝑤 → (𝐹𝑦) = (𝐹𝑤))
76eleq2d 2830 . . 3 (𝑦 = 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹𝑤)))
85, 7imbi12d 344 . 2 (𝑦 = 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))))
9 eleq2 2833 . . 3 (𝑦 = suc 𝑤 → (𝑧𝑦𝑧 ∈ suc 𝑤))
10 fveq2 6920 . . . 4 (𝑦 = suc 𝑤 → (𝐹𝑦) = (𝐹‘suc 𝑤))
1110eleq2d 2830 . . 3 (𝑦 = suc 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
129, 11imbi12d 344 . 2 (𝑦 = suc 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
13 noel 4360 . . . 4 ¬ 𝑧 ∈ ∅
1413pm2.21i 119 . . 3 (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))
1514a1i 11 . 2 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅)))
16 vex 3492 . . . . . 6 𝑧 ∈ V
1716elsuc 6465 . . . . 5 (𝑧 ∈ suc 𝑤 ↔ (𝑧𝑤𝑧 = 𝑤))
18 fveq2 6920 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹𝑥) = (𝐹𝑤))
19 suceq 6461 . . . . . . . . . . . . 13 (𝑥 = 𝑤 → suc 𝑥 = suc 𝑤)
2019fveq2d 6924 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹‘suc 𝑥) = (𝐹‘suc 𝑤))
2118, 20eleq12d 2838 . . . . . . . . . . 11 (𝑥 = 𝑤 → ((𝐹𝑥) ∈ (𝐹‘suc 𝑥) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
2221rspccva 3634 . . . . . . . . . 10 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
2322adantll 713 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
24 peano2b 7920 . . . . . . . . . . . . 13 (𝑤 ∈ ω ↔ suc 𝑤 ∈ ω)
25 ffvelcdm 7115 . . . . . . . . . . . . 13 ((𝐹:ω⟶𝐴 ∧ suc 𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
2624, 25sylan2b 593 . . . . . . . . . . . 12 ((𝐹:ω⟶𝐴𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
27 ssel 4002 . . . . . . . . . . . 12 (𝐴 ⊆ On → ((𝐹‘suc 𝑤) ∈ 𝐴 → (𝐹‘suc 𝑤) ∈ On))
28 ontr1 6441 . . . . . . . . . . . . 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 714 . . . . . . . . 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 6920 . . . . . . . . 9 (𝑧 = 𝑤 → (𝐹𝑧) = (𝐹𝑤))
3736eleq1d 2829 . . . . . . . 8 (𝑧 = 𝑤 → ((𝐹𝑧) ∈ (𝐹‘suc 𝑤) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
3822, 37syl5ibrcom 247 . . . . . . 7 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3938ad4ant23 752 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4035, 39jaod 858 . . . . 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 7938 1 (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  wo 846   = wceq 1537  wcel 2108  wral 3067  wss 3976  c0 4352  Oncon0 6395  suc csuc 6397  wf 6569  cfv 6573  ωcom 7903
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1793  ax-4 1807  ax-5 1909  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-12 2178  ax-ext 2711  ax-sep 5317  ax-nul 5324  ax-pr 5447  ax-un 7770
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 847  df-3or 1088  df-3an 1089  df-tru 1540  df-fal 1550  df-ex 1778  df-nf 1782  df-sb 2065  df-mo 2543  df-eu 2572  df-clab 2718  df-cleq 2732  df-clel 2819  df-ne 2947  df-ral 3068  df-rex 3077  df-rab 3444  df-v 3490  df-dif 3979  df-un 3981  df-in 3983  df-ss 3993  df-pss 3996  df-nul 4353  df-if 4549  df-pw 4624  df-sn 4649  df-pr 4651  df-op 4655  df-uni 4932  df-br 5167  df-opab 5229  df-tr 5284  df-id 5593  df-eprel 5599  df-po 5607  df-so 5608  df-fr 5652  df-we 5654  df-xp 5706  df-rel 5707  df-cnv 5708  df-co 5709  df-dm 5710  df-rn 5711  df-ord 6398  df-on 6399  df-lim 6400  df-suc 6401  df-iota 6525  df-fun 6575  df-fn 6576  df-f 6577  df-fv 6581  df-om 7904
This theorem is referenced by:  omsmo  8714
  Copyright terms: Public domain W3C validator