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

Theorem funopsn 5838
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 5383, as relsnopg 4836 is to relop 4886. (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 4332 . . 3 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑋 ∈ V ∧ 𝑌 ∈ V))
41, 2, 3mpbir2an 951 . 2 𝑏 𝑏 ∈ ⟨𝑋, 𝑌
5 funrel 5350 . . . . . . 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 4834 . . . . . 6 ((Rel 𝐹𝑏𝐹) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
116, 9, 10syl2anc 411 . . . . 5 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ∃𝑐𝑑 𝑏 = ⟨𝑐, 𝑑⟩)
12 vex 2806 . . . . . . . . . . . . . . . 16 𝑐 ∈ V
13 vex 2806 . . . . . . . . . . . . . . . 16 𝑑 ∈ V
1412, 13dfop 3866 . . . . . . . . . . . . . . 15 𝑐, 𝑑⟩ = {{𝑐}, {𝑐, 𝑑}}
1514eqeq2i 2242 . . . . . . . . . . . . . 14 (𝑏 = ⟨𝑐, 𝑑⟩ ↔ 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1615biimpi 120 . . . . . . . . . . . . 13 (𝑏 = ⟨𝑐, 𝑑⟩ → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
1716adantl 277 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {{𝑐}, {𝑐, 𝑑}})
18 vex 2806 . . . . . . . . . . . . . . . . 17 𝑏 ∈ V
1918, 1, 2elop 4329 . . . . . . . . . . . . . . . 16 (𝑏 ∈ ⟨𝑋, 𝑌⟩ ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
207, 19sylib 122 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌}))
21 dfsn2 3687 . . . . . . . . . . . . . . . . . . 19 {𝑋} = {𝑋, 𝑋}
22 simpl 109 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun 𝐹)
23 simpr 110 . . . . . . . . . . . . . . . . . . . . . . 23 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = ⟨𝑋, 𝑌⟩)
2423funeqd 5355 . . . . . . . . . . . . . . . . . . . . . 22 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (Fun 𝐹 ↔ Fun ⟨𝑋, 𝑌⟩))
2522, 24mpbid 147 . . . . . . . . . . . . . . . . . . . . 21 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → Fun ⟨𝑋, 𝑌⟩)
26 funopg 5367 . . . . . . . . . . . . . . . . . . . . 21 ((𝑋 ∈ V ∧ 𝑌 ∈ V ∧ Fun ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
271, 2, 25, 26mp3an12i 1378 . . . . . . . . . . . . . . . . . . . 20 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝑋 = 𝑌)
2827preq2d 3759 . . . . . . . . . . . . . . . . . . 19 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋, 𝑋} = {𝑋, 𝑌})
2921, 28eqtrid 2276 . . . . . . . . . . . . . . . . . 18 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {𝑋} = {𝑋, 𝑌})
3029eqeq2d 2243 . . . . . . . . . . . . . . . . 17 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ↔ 𝑏 = {𝑋, 𝑌}))
3130orbi2d 798 . . . . . . . . . . . . . . . 16 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3231adantr 276 . . . . . . . . . . . . . . 15 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ (𝑏 = {𝑋} ∨ 𝑏 = {𝑋, 𝑌})))
3320, 32mpbird 167 . . . . . . . . . . . . . 14 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → (𝑏 = {𝑋} ∨ 𝑏 = {𝑋}))
34 oridm 765 . . . . . . . . . . . . . 14 ((𝑏 = {𝑋} ∨ 𝑏 = {𝑋}) ↔ 𝑏 = {𝑋})
3533, 34sylib 122 . . . . . . . . . . . . 13 (((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) → 𝑏 = {𝑋})
3635adantr 276 . . . . . . . . . . . 12 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑏 = {𝑋})
3717, 36eqtr3d 2266 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑐}, {𝑐, 𝑑}} = {𝑋})
3812snex 4281 . . . . . . . . . . . 12 {𝑐} ∈ V
39 zfpair2 4306 . . . . . . . . . . . 12 {𝑐, 𝑑} ∈ V
4038, 39, 1preqsn 3863 . . . . . . . . . . 11 ({{𝑐}, {𝑐, 𝑑}} = {𝑋} ↔ ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4137, 40sylib 122 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → ({𝑐} = {𝑐, 𝑑} ∧ {𝑐, 𝑑} = 𝑋))
4241simpld 112 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐} = {𝑐, 𝑑})
4341simprd 114 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑐, 𝑑} = 𝑋)
4442, 43eqtr2d 2265 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝑋 = {𝑐})
451, 2dfop 3866 . . . . . . . . . . 11 𝑋, 𝑌⟩ = {{𝑋}, {𝑋, 𝑌}}
46 dfsn2 3687 . . . . . . . . . . . 12 {{𝑋}} = {{𝑋}, {𝑋}}
4729preq2d 3759 . . . . . . . . . . . 12 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}, {𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4846, 47eqtrid 2276 . . . . . . . . . . 11 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → {{𝑋}} = {{𝑋}, {𝑋, 𝑌}})
4945, 23, 483eqtr4a 2290 . . . . . . . . . 10 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → 𝐹 = {{𝑋}})
5049ad2antrr 488 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {{𝑋}})
5144sneqd 3686 . . . . . . . . . . 11 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {𝑋} = {{𝑐}})
5251sneqd 3686 . . . . . . . . . 10 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {{{𝑐}}})
5312opid 3885 . . . . . . . . . . 11 𝑐, 𝑐⟩ = {{𝑐}}
5453sneqi 3685 . . . . . . . . . 10 {⟨𝑐, 𝑐⟩} = {{{𝑐}}}
5552, 54eqtr4di 2282 . . . . . . . . 9 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → {{𝑋}} = {⟨𝑐, 𝑐⟩})
5650, 55eqtrd 2264 . . . . . . . 8 ((((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) ∧ 𝑏 ∈ ⟨𝑋, 𝑌⟩) ∧ 𝑏 = ⟨𝑐, 𝑑⟩) → 𝐹 = {⟨𝑐, 𝑐⟩})
57 sneq 3684 . . . . . . . . . . 11 (𝑎 = 𝑐 → {𝑎} = {𝑐})
5857eqeq2d 2243 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝑋 = {𝑎} ↔ 𝑋 = {𝑐}))
59 id 19 . . . . . . . . . . . . 13 (𝑎 = 𝑐𝑎 = 𝑐)
6059, 59opeq12d 3875 . . . . . . . . . . . 12 (𝑎 = 𝑐 → ⟨𝑎, 𝑎⟩ = ⟨𝑐, 𝑐⟩)
6160sneqd 3686 . . . . . . . . . . 11 (𝑎 = 𝑐 → {⟨𝑎, 𝑎⟩} = {⟨𝑐, 𝑐⟩})
6261eqeq2d 2243 . . . . . . . . . 10 (𝑎 = 𝑐 → (𝐹 = {⟨𝑎, 𝑎⟩} ↔ 𝐹 = {⟨𝑐, 𝑐⟩}))
6358, 62anbi12d 473 . . . . . . . . 9 (𝑎 = 𝑐 → ((𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}) ↔ (𝑋 = {𝑐} ∧ 𝐹 = {⟨𝑐, 𝑐⟩})))
6412, 63spcev 2902 . . . . . . . 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 1647 . 2 (∃𝑏 𝑏 ∈ ⟨𝑋, 𝑌⟩ → ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩})))
714, 70ax-mp 5 1 ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  wb 105  wo 716   = wceq 1398  wex 1541  wcel 2202  Vcvv 2803  {csn 3673  {cpr 3674  cop 3676  Rel wrel 4736  Fun wfun 5327
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 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-14 2205  ax-ext 2213  ax-sep 4212  ax-pow 4270  ax-pr 4305
This theorem depends on definitions:  df-bi 117  df-3an 1007  df-tru 1401  df-nf 1510  df-sb 1811  df-eu 2082  df-mo 2083  df-clab 2218  df-cleq 2224  df-clel 2227  df-nfc 2364  df-ral 2516  df-v 2805  df-un 3205  df-in 3207  df-ss 3214  df-pw 3658  df-sn 3679  df-pr 3680  df-op 3682  df-br 4094  df-opab 4156  df-id 4396  df-xp 4737  df-rel 4738  df-cnv 4739  df-co 4740  df-fun 5335
This theorem is referenced by:  funop  5839
  Copyright terms: Public domain W3C validator