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 47038
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 47036 . 2 (𝑆𝑉𝐹:𝐵𝐴)
4 vex 3442 . . . . . 6 𝑚 ∈ V
5 eqeq1 2733 . . . . . . 7 (𝑦 = 𝑚 → (𝑦 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑏⟩}))
65rexbidv 3153 . . . . . 6 (𝑦 = 𝑚 → (∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩}))
74, 6, 1elab2 3640 . . . . 5 (𝑚𝐴 ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩})
8 opeq2 4828 . . . . . . . . 9 (𝑏 = 𝑛 → ⟨𝑆, 𝑏⟩ = ⟨𝑆, 𝑛⟩)
98sneqd 4591 . . . . . . . 8 (𝑏 = 𝑛 → {⟨𝑆, 𝑏⟩} = {⟨𝑆, 𝑛⟩})
109eqeq2d 2740 . . . . . . 7 (𝑏 = 𝑛 → (𝑚 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑛⟩}))
1110cbvrexvw 3208 . . . . . 6 (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩})
12 simpr 484 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = {⟨𝑆, 𝑛⟩})
132a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩}))
14 opeq2 4828 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ⟨𝑆, 𝑥⟩ = ⟨𝑆, 𝑛⟩)
1514sneqd 4591 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
1615adantl 481 . . . . . . . . . . . 12 (((𝑆𝑉𝑛𝐵) ∧ 𝑥 = 𝑛) → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
17 simpr 484 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝑛𝐵)
18 snex 5378 . . . . . . . . . . . . 13 {⟨𝑆, 𝑛⟩} ∈ V
1918a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} ∈ V)
2013, 16, 17, 19fvmptd 6941 . . . . . . . . . . 11 ((𝑆𝑉𝑛𝐵) → (𝐹𝑛) = {⟨𝑆, 𝑛⟩})
2120eqcomd 2735 . . . . . . . . . 10 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2221adantr 480 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2312, 22eqtrd 2764 . . . . . . . 8 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = (𝐹𝑛))
2423ex 412 . . . . . . 7 ((𝑆𝑉𝑛𝐵) → (𝑚 = {⟨𝑆, 𝑛⟩} → 𝑚 = (𝐹𝑛)))
2524reximdva 3142 . . . . . 6 (𝑆𝑉 → (∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2611, 25biimtrid 242 . . . . 5 (𝑆𝑉 → (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
277, 26biimtrid 242 . . . 4 (𝑆𝑉 → (𝑚𝐴 → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2827imp 406 . . 3 ((𝑆𝑉𝑚𝐴) → ∃𝑛𝐵 𝑚 = (𝐹𝑛))
2928ralrimiva 3121 . 2 (𝑆𝑉 → ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛))
30 dffo3 7040 . 2 (𝐹:𝐵onto𝐴 ↔ (𝐹:𝐵𝐴 ∧ ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛)))
313, 29, 30sylanbrc 583 1 (𝑆𝑉𝐹:𝐵onto𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  {cab 2707  wral 3044  wrex 3053  Vcvv 3438  {csn 4579  cop 4585  cmpt 5176  wf 6482  ontowfo 6484  cfv 6486
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 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2701  ax-sep 5238  ax-nul 5248  ax-pr 5374
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2533  df-eu 2562  df-clab 2708  df-cleq 2721  df-clel 2803  df-nfc 2878  df-ne 2926  df-ral 3045  df-rex 3054  df-rab 3397  df-v 3440  df-sbc 3745  df-csb 3854  df-dif 3908  df-un 3910  df-in 3912  df-ss 3922  df-nul 4287  df-if 4479  df-sn 4580  df-pr 4582  df-op 4586  df-uni 4862  df-br 5096  df-opab 5158  df-mpt 5177  df-id 5518  df-xp 5629  df-rel 5630  df-cnv 5631  df-co 5632  df-dm 5633  df-rn 5634  df-res 5635  df-ima 5636  df-iota 6442  df-fun 6488  df-fn 6489  df-f 6490  df-fo 6492  df-fv 6494
This theorem is referenced by:  fsetsnf1o  47039
  Copyright terms: Public domain W3C validator