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 47070
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 47068 . 2 (𝑆𝑉𝐹:𝐵𝐴)
4 vex 3483 . . . . . 6 𝑚 ∈ V
5 eqeq1 2740 . . . . . . 7 (𝑦 = 𝑚 → (𝑦 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑏⟩}))
65rexbidv 3178 . . . . . 6 (𝑦 = 𝑚 → (∃𝑏𝐵 𝑦 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩}))
74, 6, 1elab2 3681 . . . . 5 (𝑚𝐴 ↔ ∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩})
8 opeq2 4873 . . . . . . . . 9 (𝑏 = 𝑛 → ⟨𝑆, 𝑏⟩ = ⟨𝑆, 𝑛⟩)
98sneqd 4637 . . . . . . . 8 (𝑏 = 𝑛 → {⟨𝑆, 𝑏⟩} = {⟨𝑆, 𝑛⟩})
109eqeq2d 2747 . . . . . . 7 (𝑏 = 𝑛 → (𝑚 = {⟨𝑆, 𝑏⟩} ↔ 𝑚 = {⟨𝑆, 𝑛⟩}))
1110cbvrexvw 3237 . . . . . 6 (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} ↔ ∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩})
12 simpr 484 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = {⟨𝑆, 𝑛⟩})
132a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝐹 = (𝑥𝐵 ↦ {⟨𝑆, 𝑥⟩}))
14 opeq2 4873 . . . . . . . . . . . . . 14 (𝑥 = 𝑛 → ⟨𝑆, 𝑥⟩ = ⟨𝑆, 𝑛⟩)
1514sneqd 4637 . . . . . . . . . . . . 13 (𝑥 = 𝑛 → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
1615adantl 481 . . . . . . . . . . . 12 (((𝑆𝑉𝑛𝐵) ∧ 𝑥 = 𝑛) → {⟨𝑆, 𝑥⟩} = {⟨𝑆, 𝑛⟩})
17 simpr 484 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → 𝑛𝐵)
18 snex 5435 . . . . . . . . . . . . 13 {⟨𝑆, 𝑛⟩} ∈ V
1918a1i 11 . . . . . . . . . . . 12 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} ∈ V)
2013, 16, 17, 19fvmptd 7022 . . . . . . . . . . 11 ((𝑆𝑉𝑛𝐵) → (𝐹𝑛) = {⟨𝑆, 𝑛⟩})
2120eqcomd 2742 . . . . . . . . . 10 ((𝑆𝑉𝑛𝐵) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2221adantr 480 . . . . . . . . 9 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → {⟨𝑆, 𝑛⟩} = (𝐹𝑛))
2312, 22eqtrd 2776 . . . . . . . 8 (((𝑆𝑉𝑛𝐵) ∧ 𝑚 = {⟨𝑆, 𝑛⟩}) → 𝑚 = (𝐹𝑛))
2423ex 412 . . . . . . 7 ((𝑆𝑉𝑛𝐵) → (𝑚 = {⟨𝑆, 𝑛⟩} → 𝑚 = (𝐹𝑛)))
2524reximdva 3167 . . . . . 6 (𝑆𝑉 → (∃𝑛𝐵 𝑚 = {⟨𝑆, 𝑛⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2611, 25biimtrid 242 . . . . 5 (𝑆𝑉 → (∃𝑏𝐵 𝑚 = {⟨𝑆, 𝑏⟩} → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
277, 26biimtrid 242 . . . 4 (𝑆𝑉 → (𝑚𝐴 → ∃𝑛𝐵 𝑚 = (𝐹𝑛)))
2827imp 406 . . 3 ((𝑆𝑉𝑚𝐴) → ∃𝑛𝐵 𝑚 = (𝐹𝑛))
2928ralrimiva 3145 . 2 (𝑆𝑉 → ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛))
30 dffo3 7121 . 2 (𝐹:𝐵onto𝐴 ↔ (𝐹:𝐵𝐴 ∧ ∀𝑚𝐴𝑛𝐵 𝑚 = (𝐹𝑛)))
313, 29, 30sylanbrc 583 1 (𝑆𝑉𝐹:𝐵onto𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1539  wcel 2107  {cab 2713  wral 3060  wrex 3069  Vcvv 3479  {csn 4625  cop 4631  cmpt 5224  wf 6556  ontowfo 6558  cfv 6560
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2707  ax-sep 5295  ax-nul 5305  ax-pr 5431
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2539  df-eu 2568  df-clab 2714  df-cleq 2728  df-clel 2815  df-nfc 2891  df-ne 2940  df-ral 3061  df-rex 3070  df-rab 3436  df-v 3481  df-sbc 3788  df-csb 3899  df-dif 3953  df-un 3955  df-in 3957  df-ss 3967  df-nul 4333  df-if 4525  df-sn 4626  df-pr 4628  df-op 4632  df-uni 4907  df-br 5143  df-opab 5205  df-mpt 5225  df-id 5577  df-xp 5690  df-rel 5691  df-cnv 5692  df-co 5693  df-dm 5694  df-rn 5695  df-res 5696  df-ima 5697  df-iota 6513  df-fun 6562  df-fn 6563  df-f 6564  df-fo 6566  df-fv 6568
This theorem is referenced by:  fsetsnf1o  47071
  Copyright terms: Public domain W3C validator