Users' Mathboxes Mathbox for Alexander van der Vekens < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  fsetsnfo Structured version   Visualization version   GIF version

Theorem fsetsnfo 45842
Description: The mapping of an element of a class to a singleton function is a surjection. (Contributed by AV, 13-Sep-2024.)
Hypotheses
Ref Expression
fsetsnf.a 𝐴 = {𝑦 ∣ ∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩}}
fsetsnf.f 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩})
Assertion
Ref Expression
fsetsnfo (𝑆𝑉𝐹:𝐵onto𝐴)
Distinct variable groups:   𝑥,𝐴   𝐵,𝑏,𝑥,𝑦   𝑆,𝑏,𝑥,𝑦   𝑉,𝑏,𝑥
Allowed substitution hints:   𝐴(𝑦,𝑏)   𝐹(𝑥,𝑦,𝑏)   𝑉(𝑦)

Proof of Theorem fsetsnfo
Dummy variables 𝑚 𝑛 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 fsetsnf.a . . 3 𝐴 = {𝑦 ∣ ∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩}}
2 fsetsnf.f . . 3 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩})
31, 2fsetsnf 45840 . 2 (𝑆𝑉𝐹:𝐵𝐴)
4 vex 3478 . . . . . 6 𝑚 ∈ V
5 eqeq1 2736 . . . . . . 7 (𝑦 = 𝑚 → (𝑦 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑏⟩}))
65rexbidv 3178 . . . . . 6 (𝑦 = 𝑚 → (∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩}))
74, 6, 1elab2 3672 . . . . 5 (𝑚𝐴 ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩})
8 opeq2 4874 . . . . . . . . 9 (𝑏 = 𝑛 → ⟨𝑆, 𝑏⟩ = ⟨𝑆, 𝑛⟩)
98sneqd 4640 . . . . . . . 8 (𝑏 = 𝑛 → {⟨𝑆, 𝑏⟩} = {⟨𝑆, 𝑛⟩})
109eqeq2d 2743 . . . . . . 7 (𝑏 = 𝑛 → (𝑚 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑛⟩}))
1110cbvrexvw 3235 . . . . . 6 (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩})
12 simpr 485 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = {⟨𝑆, 𝑛⟩})
132a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩}))
14 opeq2 4874 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ⟨𝑆, 𝑥⟩ = ⟨𝑆, 𝑛⟩)
1514sneqd 4640 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
1615adantl 482 . . . . . . . . . . . 12 (((𝑆𝑉𝑛𝐵) ∧ 𝑥 = 𝑛) → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
17 simpr 485 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝑛𝐵)
18 snex 5431 . . . . . . . . . . . . 13 {⟨𝑆, 𝑛⟩} ∈ V
1918a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} ∈ V)
2013, 16, 17, 19fvmptd 7005 . . . . . . . . . . 11 ((𝑆𝑉𝑛𝐵) → (𝐹𝑛) = {⟨𝑆, 𝑛⟩})
2120eqcomd 2738 . . . . . . . . . 10 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2221adantr 481 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2312, 22eqtrd 2772 . . . . . . . 8 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = (𝐹𝑛))
2423ex 413 . . . . . . 7 ((𝑆𝑉𝑛𝐵) → (𝑚 = {⟨𝑆, 𝑛⟩} → 𝑚 = (𝐹𝑛)))
2524reximdva 3168 . . . . . 6 (𝑆𝑉 → (∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2611, 25biimtrid 241 . . . . 5 (𝑆𝑉 → (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
277, 26biimtrid 241 . . . 4 (𝑆𝑉 → (𝑚𝐴 → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2827imp 407 . . 3 ((𝑆𝑉𝑚𝐴) → ∃𝑛𝐵 𝑚 = (𝐹𝑛))
2928ralrimiva 3146 . 2 (𝑆𝑉 → ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛))
30 dffo3 7103 . 2 (𝐹:𝐵onto𝐴 ↔ (𝐹:𝐵𝐴 ∧ ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛)))
313, 29, 30sylanbrc 583 1 (𝑆𝑉𝐹:𝐵onto𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396   = wceq 1541  wcel 2106  {cab 2709  wral 3061  wrex 3070  Vcvv 3474  {csn 4628  cop 4634  cmpt 5231  wf 6539  ontowfo 6541  cfv 6543
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2703  ax-sep 5299  ax-nul 5306  ax-pr 5427
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2534  df-eu 2563  df-clab 2710  df-cleq 2724  df-clel 2810  df-nfc 2885  df-ne 2941  df-ral 3062  df-rex 3071  df-rab 3433  df-v 3476  df-sbc 3778  df-csb 3894  df-dif 3951  df-un 3953  df-in 3955  df-ss 3965  df-nul 4323  df-if 4529  df-sn 4629  df-pr 4631  df-op 4635  df-uni 4909  df-br 5149  df-opab 5211  df-mpt 5232  df-id 5574  df-xp 5682  df-rel 5683  df-cnv 5684  df-co 5685  df-dm 5686  df-rn 5687  df-res 5688  df-ima 5689  df-iota 6495  df-fun 6545  df-fn 6546  df-f 6547  df-fo 6549  df-fv 6551
This theorem is referenced by:  fsetsnf1o  45843
  Copyright terms: Public domain W3C validator