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 47773
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 47771 . 2 (𝑆𝑉𝐹:𝐵𝐴)
4 vex 3459 . . . . . 6 𝑚 ∈ V
5 eqeq1 2767 . . . . . . 7 (𝑦 = 𝑚 → (𝑦 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑏⟩}))
65rexbidv 3189 . . . . . 6 (𝑦 = 𝑚 → (∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩}))
74, 6, 1elab2 3642 . . . . 5 (𝑚𝐴 ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩})
8 opeq2 4840 . . . . . . . . 9 (𝑏 = 𝑛 → ⟨𝑆, 𝑏⟩ = ⟨𝑆, 𝑛⟩)
98sneqd 4602 . . . . . . . 8 (𝑏 = 𝑛 → {⟨𝑆, 𝑏⟩} = {⟨𝑆, 𝑛⟩})
109eqeq2d 2774 . . . . . . 7 (𝑏 = 𝑛 → (𝑚 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑛⟩}))
1110cbvrexvw 3244 . . . . . 6 (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩})
12 simpr 489 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = {⟨𝑆, 𝑛⟩})
132a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩}))
14 opeq2 4840 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ⟨𝑆, 𝑥⟩ = ⟨𝑆, 𝑛⟩)
1514sneqd 4602 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
1615adantl 486 . . . . . . . . . . . 12 (((𝑆𝑉𝑛𝐵) ∧ 𝑥 = 𝑛) → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
17 simpr 489 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝑛𝐵)
18 snex 5412 . . . . . . . . . . . . 13 {⟨𝑆, 𝑛⟩} ∈ V
1918a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} ∈ V)
2013, 16, 17, 19fvmptd 6999 . . . . . . . . . . 11 ((𝑆𝑉𝑛𝐵) → (𝐹𝑛) = {⟨𝑆, 𝑛⟩})
2120eqcomd 2769 . . . . . . . . . 10 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2221adantr 485 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2312, 22eqtrd 2798 . . . . . . . 8 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = (𝐹𝑛))
2423ex 417 . . . . . . 7 ((𝑆𝑉𝑛𝐵) → (𝑚 = {⟨𝑆, 𝑛⟩} → 𝑚 = (𝐹𝑛)))
2524reximdva 3178 . . . . . 6 (𝑆𝑉 → (∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2611, 25biimtrid 245 . . . . 5 (𝑆𝑉 → (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
277, 26biimtrid 245 . . . 4 (𝑆𝑉 → (𝑚𝐴 → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2827imp 411 . . 3 ((𝑆𝑉𝑚𝐴) → ∃𝑛𝐵 𝑚 = (𝐹𝑛))
2928ralrimiva 3157 . 2 (𝑆𝑉 → ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛))
30 dffo3 7099 . 2 (𝐹:𝐵onto𝐴 ↔ (𝐹:𝐵𝐴 ∧ ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛)))
313, 29, 30sylanbrc 594 1 (𝑆𝑉𝐹:𝐵onto𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 400   = wceq 1570  wcel 2143  {cab 2741  wral 3079  wrex 3089  Vcvv 3455  {csn 4590  cop 4596  cmpt 5193  wf 6534  ontowfo 6536  cfv 6538
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1825  ax-4 1839  ax-5 1940  ax-6 1997  ax-7 2038  ax-8 2145  ax-9 2153  ax-10 2176  ax-11 2192  ax-12 2213  ax-ext 2735  ax-sep 5258  ax-nul 5270  ax-pr 5406
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1810  df-nf 1814  df-sb 2097  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2838  df-nfc 2912  df-ne 2959  df-ral 3080  df-rex 3090  df-rab 3417  df-v 3457  df-sbc 3746  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4288  df-if 4489  df-sn 4591  df-pr 4593  df-op 4597  df-uni 4874  df-br 5111  df-opab 5175  df-mpt 5194  df-id 5558  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-fo 6544  df-fv 6546
This theorem is referenced by:  fsetsnf1o  47774
  Copyright terms: Public domain W3C validator