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

Theorem omsmolem 8137
Description: Lemma for omsmo 8138. (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 2873 . . 3 (𝑦 = ∅ → (𝑧𝑦𝑧 ∈ ∅))
2 fveq2 6545 . . . 4 (𝑦 = ∅ → (𝐹𝑦) = (𝐹‘∅))
32eleq2d 2870 . . 3 (𝑦 = ∅ → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘∅)))
41, 3imbi12d 346 . 2 (𝑦 = ∅ → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))))
5 eleq2 2873 . . 3 (𝑦 = 𝑤 → (𝑧𝑦𝑧𝑤))
6 fveq2 6545 . . . 4 (𝑦 = 𝑤 → (𝐹𝑦) = (𝐹𝑤))
76eleq2d 2870 . . 3 (𝑦 = 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹𝑤)))
85, 7imbi12d 346 . 2 (𝑦 = 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))))
9 eleq2 2873 . . 3 (𝑦 = suc 𝑤 → (𝑧𝑦𝑧 ∈ suc 𝑤))
10 fveq2 6545 . . . 4 (𝑦 = suc 𝑤 → (𝐹𝑦) = (𝐹‘suc 𝑤))
1110eleq2d 2870 . . 3 (𝑦 = suc 𝑤 → ((𝐹𝑧) ∈ (𝐹𝑦) ↔ (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
129, 11imbi12d 346 . 2 (𝑦 = suc 𝑤 → ((𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦)) ↔ (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
13 noel 4222 . . . 4 ¬ 𝑧 ∈ ∅
1413pm2.21i 119 . . 3 (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅))
1514a1i 11 . 2 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧 ∈ ∅ → (𝐹𝑧) ∈ (𝐹‘∅)))
16 vex 3443 . . . . . 6 𝑧 ∈ V
1716elsuc 6142 . . . . 5 (𝑧 ∈ suc 𝑤 ↔ (𝑧𝑤𝑧 = 𝑤))
18 fveq2 6545 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹𝑥) = (𝐹𝑤))
19 suceq 6138 . . . . . . . . . . . . 13 (𝑥 = 𝑤 → suc 𝑥 = suc 𝑤)
2019fveq2d 6549 . . . . . . . . . . . 12 (𝑥 = 𝑤 → (𝐹‘suc 𝑥) = (𝐹‘suc 𝑤))
2118, 20eleq12d 2879 . . . . . . . . . . 11 (𝑥 = 𝑤 → ((𝐹𝑥) ∈ (𝐹‘suc 𝑥) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
2221rspccva 3560 . . . . . . . . . 10 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
2322adantll 710 . . . . . . . . 9 ((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) → (𝐹𝑤) ∈ (𝐹‘suc 𝑤))
24 peano2b 7459 . . . . . . . . . . . . 13 (𝑤 ∈ ω ↔ suc 𝑤 ∈ ω)
25 ffvelrn 6721 . . . . . . . . . . . . 13 ((𝐹:ω⟶𝐴 ∧ suc 𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
2624, 25sylan2b 593 . . . . . . . . . . . 12 ((𝐹:ω⟶𝐴𝑤 ∈ ω) → (𝐹‘suc 𝑤) ∈ 𝐴)
27 ssel 3889 . . . . . . . . . . . 12 (𝐴 ⊆ On → ((𝐹‘suc 𝑤) ∈ 𝐴 → (𝐹‘suc 𝑤) ∈ On))
28 ontr1 6119 . . . . . . . . . . . . 13 ((𝐹‘suc 𝑤) ∈ On → (((𝐹𝑧) ∈ (𝐹𝑤) ∧ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
2928expcomd 417 . . . . . . . . . . . 12 ((𝐹‘suc 𝑤) ∈ On → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤))))
3026, 27, 29syl56 36 . . . . . . . . . . 11 (𝐴 ⊆ On → ((𝐹:ω⟶𝐴𝑤 ∈ ω) → ((𝐹𝑤) ∈ (𝐹‘suc 𝑤) → ((𝐹𝑧) ∈ (𝐹𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
3130impl 456 . . . . . . . . . 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 407 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
36 fveq2 6545 . . . . . . . . 9 (𝑧 = 𝑤 → (𝐹𝑧) = (𝐹𝑤))
3736eleq1d 2869 . . . . . . . 8 (𝑧 = 𝑤 → ((𝐹𝑧) ∈ (𝐹‘suc 𝑤) ↔ (𝐹𝑤) ∈ (𝐹‘suc 𝑤)))
3822, 37syl5ibrcom 248 . . . . . . 7 ((∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥) ∧ 𝑤 ∈ ω) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
3938ad4ant23 749 . . . . . 6 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 = 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4035, 39jaod 854 . . . . 5 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → ((𝑧𝑤𝑧 = 𝑤) → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4117, 40syl5bi 243 . . . 4 (((((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) ∧ 𝑤 ∈ ω) ∧ (𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤))) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))
4241exp31 420 . . 3 (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑤 ∈ ω → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
4342com12 32 . 2 (𝑤 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → ((𝑧𝑤 → (𝐹𝑧) ∈ (𝐹𝑤)) → (𝑧 ∈ suc 𝑤 → (𝐹𝑧) ∈ (𝐹‘suc 𝑤)))))
444, 8, 12, 15, 43finds2 7473 1 (𝑦 ∈ ω → (((𝐴 ⊆ On ∧ 𝐹:ω⟶𝐴) ∧ ∀𝑥 ∈ ω (𝐹𝑥) ∈ (𝐹‘suc 𝑥)) → (𝑧𝑦 → (𝐹𝑧) ∈ (𝐹𝑦))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396  wo 842   = wceq 1525  wcel 2083  wral 3107  wss 3865  c0 4217  Oncon0 6073  suc csuc 6075  wf 6228  cfv 6232  ωcom 7443
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1781  ax-4 1795  ax-5 1892  ax-6 1951  ax-7 1996  ax-8 2085  ax-9 2093  ax-10 2114  ax-11 2128  ax-12 2143  ax-13 2346  ax-ext 2771  ax-sep 5101  ax-nul 5108  ax-pr 5228  ax-un 7326
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 843  df-3or 1081  df-3an 1082  df-tru 1528  df-ex 1766  df-nf 1770  df-sb 2045  df-mo 2578  df-eu 2614  df-clab 2778  df-cleq 2790  df-clel 2865  df-nfc 2937  df-ne 2987  df-ral 3112  df-rex 3113  df-rab 3116  df-v 3442  df-sbc 3712  df-dif 3868  df-un 3870  df-in 3872  df-ss 3880  df-pss 3882  df-nul 4218  df-if 4388  df-pw 4461  df-sn 4479  df-pr 4481  df-tp 4483  df-op 4485  df-uni 4752  df-br 4969  df-opab 5031  df-tr 5071  df-id 5355  df-eprel 5360  df-po 5369  df-so 5370  df-fr 5409  df-we 5411  df-xp 5456  df-rel 5457  df-cnv 5458  df-co 5459  df-dm 5460  df-rn 5461  df-ord 6076  df-on 6077  df-lim 6078  df-suc 6079  df-iota 6196  df-fun 6234  df-fn 6235  df-f 6236  df-fv 6240  df-om 7444
This theorem is referenced by:  omsmo  8138
  Copyright terms: Public domain W3C validator