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 47058
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 47056 . 2 (𝑆𝑉𝐹:𝐵𝐴)
4 vex 3454 . . . . . 6 𝑚 ∈ V
5 eqeq1 2734 . . . . . . 7 (𝑦 = 𝑚 → (𝑦 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑏⟩}))
65rexbidv 3158 . . . . . 6 (𝑦 = 𝑚 → (∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩}))
74, 6, 1elab2 3652 . . . . 5 (𝑚𝐴 ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩})
8 opeq2 4841 . . . . . . . . 9 (𝑏 = 𝑛 → ⟨𝑆, 𝑏⟩ = ⟨𝑆, 𝑛⟩)
98sneqd 4604 . . . . . . . 8 (𝑏 = 𝑛 → {⟨𝑆, 𝑏⟩} = {⟨𝑆, 𝑛⟩})
109eqeq2d 2741 . . . . . . 7 (𝑏 = 𝑛 → (𝑚 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑛⟩}))
1110cbvrexvw 3217 . . . . . 6 (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩})
12 simpr 484 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = {⟨𝑆, 𝑛⟩})
132a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩}))
14 opeq2 4841 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ⟨𝑆, 𝑥⟩ = ⟨𝑆, 𝑛⟩)
1514sneqd 4604 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
1615adantl 481 . . . . . . . . . . . 12 (((𝑆𝑉𝑛𝐵) ∧ 𝑥 = 𝑛) → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
17 simpr 484 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝑛𝐵)
18 snex 5394 . . . . . . . . . . . . 13 {⟨𝑆, 𝑛⟩} ∈ V
1918a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} ∈ V)
2013, 16, 17, 19fvmptd 6978 . . . . . . . . . . 11 ((𝑆𝑉𝑛𝐵) → (𝐹𝑛) = {⟨𝑆, 𝑛⟩})
2120eqcomd 2736 . . . . . . . . . 10 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2221adantr 480 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2312, 22eqtrd 2765 . . . . . . . 8 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = (𝐹𝑛))
2423ex 412 . . . . . . 7 ((𝑆𝑉𝑛𝐵) → (𝑚 = {⟨𝑆, 𝑛⟩} → 𝑚 = (𝐹𝑛)))
2524reximdva 3147 . . . . . 6 (𝑆𝑉 → (∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2611, 25biimtrid 242 . . . . 5 (𝑆𝑉 → (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
277, 26biimtrid 242 . . . 4 (𝑆𝑉 → (𝑚𝐴 → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2827imp 406 . . 3 ((𝑆𝑉𝑚𝐴) → ∃𝑛𝐵 𝑚 = (𝐹𝑛))
2928ralrimiva 3126 . 2 (𝑆𝑉 → ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛))
30 dffo3 7077 . 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 2708  wral 3045  wrex 3054  Vcvv 3450  {csn 4592  cop 4598  cmpt 5191  wf 6510  ontowfo 6512  cfv 6514
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 2702  ax-sep 5254  ax-nul 5264  ax-pr 5390
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 2534  df-eu 2563  df-clab 2709  df-cleq 2722  df-clel 2804  df-nfc 2879  df-ne 2927  df-ral 3046  df-rex 3055  df-rab 3409  df-v 3452  df-sbc 3757  df-csb 3866  df-dif 3920  df-un 3922  df-in 3924  df-ss 3934  df-nul 4300  df-if 4492  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4875  df-br 5111  df-opab 5173  df-mpt 5192  df-id 5536  df-xp 5647  df-rel 5648  df-cnv 5649  df-co 5650  df-dm 5651  df-rn 5652  df-res 5653  df-ima 5654  df-iota 6467  df-fun 6516  df-fn 6517  df-f 6518  df-fo 6520  df-fv 6522
This theorem is referenced by:  fsetsnf1o  47059
  Copyright terms: Public domain W3C validator