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

Theorem funopsn 5829
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 5376, as relsnopg 4830 is to relop 4880. (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 4326 . . 3 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑋 ∈ V ∧ 𝑌 ∈ V))
41, 2, 3mpbir2an 950 . 2 𝑏 𝑏 ∈ ⟨𝑋, 𝑌
5 funrel 5343 . . . . . . 7 (Fun 𝐹 → Rel 𝐹)
65ad2antrr 488 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → Rel 𝐹)
7 simpr 110 . . . . . . 7 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏 ∈ ⟨𝑋, 𝑌⟩)
8 simplr 529 . . . . . . 7 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝐹 = ⟨𝑋, 𝑌⟩)
97, 8eleqtrrd 2311 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏𝐹)
10 elrel 4828 . . . . . 6 ((Rel 𝐹𝑏𝐹) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
116, 9, 10syl2anc 411 . . . . 5 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
12 vex 2805 . . . . . . . . . . . . . . . 16 𝑐 ∈ V
13 vex 2805 . . . . . . . . . . . . . . . 16 𝑑 ∈ V
1412, 13dfop 3861 . . . . . . . . . . . . . . 15 𝑐, 𝑑⟩ = {{𝑐}, {𝑐, 𝑑}}
1514eqeq2i 2242 . . . . . . . . . . . . . 14 (𝑏 = ⟨𝑐, 𝑑⟩ ↔ 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1615biimpi 120 . . . . . . . . . . . . 13 (𝑏 = ⟨𝑐, 𝑑⟩ → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1716adantl 277 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
18 vex 2805 . . . . . . . . . . . . . . . . 17 𝑏 ∈ V
1918, 1, 2elop 4323 . . . . . . . . . . . . . . . 16 (𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
207, 19sylib 122 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
21 dfsn2 3683 . . . . . . . . . . . . . . . . . . 19 {𝑋} = {𝑋, 𝑋}
22 simpl 109 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun 𝐹)
23 simpr 110 . . . . . . . . . . . . . . . . . . . . . . 23 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = ⟨𝑋, 𝑌⟩)
2423funeqd 5348 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (Fun 𝐹 ↔ Fun ⟨𝑋, 𝑌⟩))
2522, 24mpbid 147 . . . . . . . . . . . . . . . . . . . . 21 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun ⟨𝑋, 𝑌⟩)
26 funopg 5360 . . . . . . . . . . . . . . . . . . . . 21 ((𝑋 ∈ V ∧ 𝑌 ∈ V ∧ Fun ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
271, 2, 25, 26mp3an12i 1377 . . . . . . . . . . . . . . . . . . . 20 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
2827preq2d 3755 . . . . . . . . . . . . . . . . . . 19 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋, 𝑋} = {𝑋, 𝑌})
2921, 28eqtrid 2276 . . . . . . . . . . . . . . . . . 18 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋} = {𝑋, 𝑌})
3029eqeq2d 2243 . . . . . . . . . . . . . . . . 17 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ↔ 𝑏 = {𝑋, 𝑌}))
3130orbi2d 797 . . . . . . . . . . . . . . . 16 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3231adantr 276 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3320, 32mpbird 167 . . . . . . . . . . . . . 14 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋}))
34 oridm 764 . . . . . . . . . . . . . 14 ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ 𝑏 = {𝑋})
3533, 34sylib 122 . . . . . . . . . . . . 13 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏 = {𝑋})
3635adantr 276 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {𝑋})
3717, 36eqtr3d 2266 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑐}, {𝑐, 𝑑}} = {𝑋})
3812snex 4275 . . . . . . . . . . . 12 {𝑐} ∈ V
39 zfpair2 4300 . . . . . . . . . . . 12 {𝑐, 𝑑} ∈ V
4038, 39, 1preqsn 3858 . . . . . . . . . . 11 ({{𝑐}, {𝑐, 𝑑}} = {𝑋} ↔ ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4137, 40sylib 122 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4241simpld 112 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐} = {𝑐, 𝑑})
4341simprd 114 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐, 𝑑} = 𝑋)
4442, 43eqtr2d 2265 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑋 = {𝑐})
451, 2dfop 3861 . . . . . . . . . . 11 𝑋, 𝑌⟩ = {{𝑋}, {𝑋, 𝑌}}
46 dfsn2 3683 . . . . . . . . . . . 12 {{𝑋}} = {{𝑋}, {𝑋}}
4729preq2d 3755 . . . . . . . . . . . 12 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}, {𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4846, 47eqtrid 2276 . . . . . . . . . . 11 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4945, 23, 483eqtr4a 2290 . . . . . . . . . 10 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = {{𝑋}})
5049ad2antrr 488 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {{𝑋}})
5144sneqd 3682 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑋} = {{𝑐}})
5251sneqd 3682 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {{{𝑐}}})
5312opid 3880 . . . . . . . . . . 11 𝑐, 𝑐⟩ = {{𝑐}}
5453sneqi 3681 . . . . . . . . . 10 {⟨𝑐, 𝑐⟩} = {{{𝑐}}}
5552, 54eqtr4di 2282 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {⟨𝑐, 𝑐⟩})
5650, 55eqtrd 2264 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {⟨𝑐, 𝑐⟩})
57 sneq 3680 . . . . . . . . . . 11 (𝑎 = 𝑐 → {𝑎} = {𝑐})
5857eqeq2d 2243 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝑋 = {𝑎} ↔ 𝑋 = {𝑐}))
59 id 19 . . . . . . . . . . . . 13 (𝑎 = 𝑐𝑎 = 𝑐)
6059, 59opeq12d 3870 . . . . . . . . . . . 12 (𝑎 = 𝑐 → ⟨𝑎, 𝑎⟩ = ⟨𝑐, 𝑐⟩)
6160sneqd 3682 . . . . . . . . . . 11 (𝑎 = 𝑐 → {⟨𝑎, 𝑎⟩} = {⟨𝑐, 𝑐⟩})
6261eqeq2d 2243 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝐹 = {⟨𝑎, 𝑎⟩} ↔ 𝐹 = {⟨𝑐, 𝑐⟩}))
6358, 62anbi12d 473 . . . . . . . . 9 (𝑎 = 𝑐 → ((𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}) ↔ (𝑋 = {𝑐} ∧ 𝐹 = {⟨𝑐, 𝑐⟩})))
6412, 63spcev 2901 . . . . . . . 8 ((𝑋 = {𝑐} ∧ 𝐹 = {⟨𝑐, 𝑐⟩}) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6544, 56, 64syl2anc 411 . . . . . . 7 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6665ex 115 . . . . . 6 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = ⟨𝑐, 𝑑⟩ → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
6766exlimdvv 1946 . . . . 5 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩ → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
6811, 67mpd 13 . . . 4 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
6968expcom 116 . . 3 (𝑏 ∈ ⟨𝑋, 𝑌⟩ → ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
7069exlimiv 1646 . 2 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ → ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
714, 70ax-mp 5 1 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wb 105  wo 715   = wceq 1397  wex 1540  wcel 2202  Vcvv 2802  {csn 3669  {cpr 3670  cop 3672  Rel wrel 4730  Fun wfun 5320
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 716  ax-5 1495  ax-7 1496  ax-gen 1497  ax-ie1 1541  ax-ie2 1542  ax-8 1552  ax-10 1553  ax-11 1554  ax-i12 1555  ax-bndl 1557  ax-4 1558  ax-17 1574  ax-i9 1578  ax-ial 1582  ax-i5r 1583  ax-14 2205  ax-ext 2213  ax-sep 4207  ax-pow 4264  ax-pr 4299
This theorem depends on definitions:  df-bi 117  df-3an 1006  df-tru 1400  df-nf 1509  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2363  df-ral 2515  df-v 2804  df-un 3204  df-in 3206  df-ss 3213  df-pw 3654  df-sn 3675  df-pr 3676  df-op 3678  df-br 4089  df-opab 4151  df-id 4390  df-xp 4731  df-rel 4732  df-cnv 4733  df-co 4734  df-fun 5328
This theorem is referenced by:  funop  5830
  Copyright terms: Public domain W3C validator