ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  funopsn GIF version

Theorem funopsn 5816
Description: If a function is an ordered pair then it is a singleton of an ordered pair. (Contributed by AV, 20-Sep-2020.) (Proof shortened by AV, 15-Jul-2021.) A function is a class of ordered pairs, so the fact that an ordered pair may sometimes be itself a function is an "accident" depending on the specific encoding of ordered pairs as classes (in set.mm, the Kuratowski encoding). A more meaningful statement is funsng 5366, as relsnopg 4822 is to relop 4871. (New usage is discouraged.)
Hypotheses
Ref Expression
funopsn.x 𝑋 ∈ V
funopsn.y 𝑌 ∈ V
Assertion
Ref Expression
funopsn ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
Distinct variable groups:   𝐹,𝑎   𝑋,𝑎   𝑌,𝑎

Proof of Theorem funopsn
Dummy variables 𝑏 𝑐 𝑑 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funopsn.x . . 3 𝑋 ∈ V
2 funopsn.y . . 3 𝑌 ∈ V
3 opm 4319 . . 3 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑋 ∈ V ∧ 𝑌 ∈ V))
41, 2, 3mpbir2an 948 . 2 𝑏 𝑏 ∈ ⟨𝑋, 𝑌
5 funrel 5334 . . . . . . 7 (Fun 𝐹 → Rel 𝐹)
65ad2antrr 488 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → Rel 𝐹)
7 simpr 110 . . . . . . 7 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏 ∈ ⟨𝑋, 𝑌⟩)
8 simplr 528 . . . . . . 7 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝐹 = ⟨𝑋, 𝑌⟩)
97, 8eleqtrrd 2309 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏𝐹)
10 elrel 4820 . . . . . 6 ((Rel 𝐹𝑏𝐹) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
116, 9, 10syl2anc 411 . . . . 5 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
12 vex 2802 . . . . . . . . . . . . . . . 16 𝑐 ∈ V
13 vex 2802 . . . . . . . . . . . . . . . 16 𝑑 ∈ V
1412, 13dfop 3855 . . . . . . . . . . . . . . 15 𝑐, 𝑑⟩ = {{𝑐}, {𝑐, 𝑑}}
1514eqeq2i 2240 . . . . . . . . . . . . . 14 (𝑏 = ⟨𝑐, 𝑑⟩ ↔ 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1615biimpi 120 . . . . . . . . . . . . 13 (𝑏 = ⟨𝑐, 𝑑⟩ → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1716adantl 277 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
18 vex 2802 . . . . . . . . . . . . . . . . 17 𝑏 ∈ V
1918, 1, 2elop 4316 . . . . . . . . . . . . . . . 16 (𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
207, 19sylib 122 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
21 dfsn2 3680 . . . . . . . . . . . . . . . . . . 19 {𝑋} = {𝑋, 𝑋}
22 simpl 109 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun 𝐹)
23 simpr 110 . . . . . . . . . . . . . . . . . . . . . . 23 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = ⟨𝑋, 𝑌⟩)
2423funeqd 5339 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (Fun 𝐹 ↔ Fun ⟨𝑋, 𝑌⟩))
2522, 24mpbid 147 . . . . . . . . . . . . . . . . . . . . 21 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun ⟨𝑋, 𝑌⟩)
26 funopg 5351 . . . . . . . . . . . . . . . . . . . . 21 ((𝑋 ∈ V ∧ 𝑌 ∈ V ∧ Fun ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
271, 2, 25, 26mp3an12i 1375 . . . . . . . . . . . . . . . . . . . 20 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
2827preq2d 3750 . . . . . . . . . . . . . . . . . . 19 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋, 𝑋} = {𝑋, 𝑌})
2921, 28eqtrid 2274 . . . . . . . . . . . . . . . . . 18 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋} = {𝑋, 𝑌})
3029eqeq2d 2241 . . . . . . . . . . . . . . . . 17 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ↔ 𝑏 = {𝑋, 𝑌}))
3130orbi2d 795 . . . . . . . . . . . . . . . 16 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3231adantr 276 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3320, 32mpbird 167 . . . . . . . . . . . . . 14 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋}))
34 oridm 762 . . . . . . . . . . . . . 14 ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ 𝑏 = {𝑋})
3533, 34sylib 122 . . . . . . . . . . . . 13 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏 = {𝑋})
3635adantr 276 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {𝑋})
3717, 36eqtr3d 2264 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑐}, {𝑐, 𝑑}} = {𝑋})
3812snex 4268 . . . . . . . . . . . 12 {𝑐} ∈ V
39 zfpair2 4293 . . . . . . . . . . . 12 {𝑐, 𝑑} ∈ V
4038, 39, 1preqsn 3852 . . . . . . . . . . 11 ({{𝑐}, {𝑐, 𝑑}} = {𝑋} ↔ ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4137, 40sylib 122 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4241simpld 112 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐} = {𝑐, 𝑑})
4341simprd 114 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐, 𝑑} = 𝑋)
4442, 43eqtr2d 2263 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑋 = {𝑐})
451, 2dfop 3855 . . . . . . . . . . 11 𝑋, 𝑌⟩ = {{𝑋}, {𝑋, 𝑌}}
46 dfsn2 3680 . . . . . . . . . . . 12 {{𝑋}} = {{𝑋}, {𝑋}}
4729preq2d 3750 . . . . . . . . . . . 12 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}, {𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4846, 47eqtrid 2274 . . . . . . . . . . 11 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4945, 23, 483eqtr4a 2288 . . . . . . . . . 10 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = {{𝑋}})
5049ad2antrr 488 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {{𝑋}})
5144sneqd 3679 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑋} = {{𝑐}})
5251sneqd 3679 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {{{𝑐}}})
5312opid 3874 . . . . . . . . . . 11 𝑐, 𝑐⟩ = {{𝑐}}
5453sneqi 3678 . . . . . . . . . 10 {⟨𝑐, 𝑐⟩} = {{{𝑐}}}
5552, 54eqtr4di 2280 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {⟨𝑐, 𝑐⟩})
5650, 55eqtrd 2262 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {⟨𝑐, 𝑐⟩})
57 sneq 3677 . . . . . . . . . . 11 (𝑎 = 𝑐 → {𝑎} = {𝑐})
5857eqeq2d 2241 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝑋 = {𝑎} ↔ 𝑋 = {𝑐}))
59 id 19 . . . . . . . . . . . . 13 (𝑎 = 𝑐𝑎 = 𝑐)
6059, 59opeq12d 3864 . . . . . . . . . . . 12 (𝑎 = 𝑐 → ⟨𝑎, 𝑎⟩ = ⟨𝑐, 𝑐⟩)
6160sneqd 3679 . . . . . . . . . . 11 (𝑎 = 𝑐 → {⟨𝑎, 𝑎⟩} = {⟨𝑐, 𝑐⟩})
6261eqeq2d 2241 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝐹 = {⟨𝑎, 𝑎⟩} ↔ 𝐹 = {⟨𝑐, 𝑐⟩}))
6358, 62anbi12d 473 . . . . . . . . 9 (𝑎 = 𝑐 → ((𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}) ↔ (𝑋 = {𝑐} ∧ 𝐹 = {⟨𝑐, 𝑐⟩})))
6412, 63spcev 2898 . . . . . . . 8 ((𝑋 = {𝑐} ∧ 𝐹 = {⟨𝑐, 𝑐⟩}) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6544, 56, 64syl2anc 411 . . . . . . 7 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6665ex 115 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = ⟨𝑐, 𝑑⟩ → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
6766exlimdvv 1944 . . . . 5 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩ → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
6811, 67mpd 13 . . . 4 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6968expcom 116 . . 3 (𝑏 ∈ ⟨𝑋, 𝑌⟩ → ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
7069exlimiv 1644 . 2 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ → ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
714, 70ax-mp 5 1 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wb 105  wo 713   = wceq 1395  wex 1538  wcel 2200  Vcvv 2799  {csn 3666  {cpr 3667  cop 3669  Rel wrel 4723  Fun wfun 5311
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-14 2203  ax-ext 2211  ax-sep 4201  ax-pow 4257  ax-pr 4292
This theorem depends on definitions:  df-bi 117  df-3an 1004  df-tru 1398  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ral 2513  df-v 2801  df-un 3201  df-in 3203  df-ss 3210  df-pw 3651  df-sn 3672  df-pr 3673  df-op 3675  df-br 4083  df-opab 4145  df-id 4383  df-xp 4724  df-rel 4725  df-cnv 4726  df-co 4727  df-fun 5319
This theorem is referenced by:  funop  5817
  Copyright terms: Public domain W3C validator